
/* WARNING: Type propagation algorithm not settling */

int sqlite3_backup_step(sqlite3_backup *p,int nPage)

{
  u8 uVar1;
  BtShared *pBVar2;
  code *pcVar3;
  code *pcVar4;
  Pager *pPVar5;
  sqlite3 *psVar6;
  code *pcVar7;
  undefined4 *puVar8;
  undefined2 *puVar9;
  int iVar10;
  undefined4 uVar11;
  BtShared *pBVar12;
  uint uVar13;
  sqlite3_file *psVar14;
  int extraout_v1;
  undefined2 *puVar15;
  int *piVar16;
  u8 *zBuf;
  Btree *pBVar17;
  sqlite3_mutex *psVar18;
  sqlite3 *psVar19;
  Wal *pWal;
  u32 **ppuVar20;
  PgHdr *pPVar21;
  sqlite3 *in_a2;
  int iVar22;
  sqlite3 *in_a3;
  sqlite3 *psVar23;
  sqlite3 *unaff_s2;
  u8 *puVar24;
  sqlite3 *unaff_s3;
  sqlite3 *unaff_s5;
  sqlite3 *unaff_s6;
  code *unaff_s7;
  undefined *puVar25;
  sqlite3 *unaff_s8;
  int iVar26;
  sqlite3 *psVar27;
  sqlite3 *psVar28;
  int iStack_1d8;
  Pager *pPStack_1d4;
  sqlite3 *psStack_1cc;
  sqlite3 *psStack_1c8;
  sqlite3 *psStack_1c4;
  sqlite3 *psStack_1c0;
  sqlite3 *psStack_1bc;
  sqlite3 *psStack_1b8;
  code *pcStack_1b4;
  undefined8 uStack_1a0;
  undefined *puStack_198;
  sqlite3 *psStack_18c;
  sqlite3 *psStack_188;
  sqlite3 *psStack_184;
  sqlite3 *psStack_180;
  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_17c;
  sqlite3 *psStack_178;
  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_174;
  sqlite3 *psStack_170;
  sqlite3 *psStack_16c;
  sqlite3 *psStack_168;
  undefined4 *puStack_164;
  sqlite3_mutex *psStack_160;
  sqlite3 *psStack_15c;
  sqlite3 *psStack_158;
  int iStack_154;
  undefined2 *puStack_150;
  code *pcStack_14c;
  Vdbe **ppVStack_148;
  code *pcStack_144;
  sqlite3 *psStack_140;
  sqlite3 *psStack_13c;
  undefined4 *puStack_138;
  sqlite3 *psStack_134;
  int iStack_130;
  sqlite3_vfs *psStack_12c;
  undefined8 uStack_128;
  Vdbe *pVStack_120;
  Vdbe *pVStack_11c;
  Db *pDStack_118;
  u32 auStack_114 [26];
  Wal *pWStack_ac;
  sqlite3_backup *psStack_a8;
  sqlite3 *psStack_a4;
  sqlite3 *psStack_a0;
  sqlite3 *psStack_9c;
  sqlite3 *psStack_98;
  sqlite3 *psStack_94;
  sqlite3 *psStack_90;
  code *pcStack_8c;
  sqlite3 *psStack_88;
  code *pcStack_84;
  sqlite3 *psStack_78;
  sqlite3 *psStack_70;
  sqlite3 *psStack_6c;
  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_64;
  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_60;
  sqlite3 *psStack_5c;
  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_50;
  Pager *pPStack_4c;
  sqlite3 *psStack_40;
  DbPage *pSrcPg;
  sqlite3 *psStack_34;
  sqlite3_mutex *psStack_2c;
  
  psStack_2c = *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc;
  psVar27 = (sqlite3 *)nPage;
  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pSrcDb->mutex);
  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(p->pSrc);
  if (p->pDestDb == (sqlite3 *)0x0) {
    psVar23 = (sqlite3 *)p->rc;
    if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;
    pBVar17 = p->pSrc;
    paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;
    pPStack_4c = p->pDest->pBt->pPager;
LAB_000d69a8:
    in_a2 = (sqlite3 *)0x0;
    if (pBVar17->inTrans == '\0') {
      psVar27 = (sqlite3 *)0x0;
      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);
      if (p->bDestLocked == 0) {
        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;
        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;
        goto LAB_000d6aa4;
      }
      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;
LAB_000d72d0:
      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;
      pBVar17 = p->pSrc;
    }
    else {
      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;
      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {
LAB_000d6aa4:
        in_a3 = (sqlite3 *)0x0;
        in_a2 = (sqlite3 *)0xffffffff;
        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;
        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);
        if (iVar26 != 7) goto LAB_000d69c4;
        pBVar17 = p->pSrc;
        psVar23 = (sqlite3 *)&DAT_00000007;
        goto LAB_000d6a48;
      }
      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;
LAB_000d69c4:
      in_a2 = (sqlite3 *)&p->iDestSchema;
      if (p->bDestLocked == 0) {
        psVar27 = (sqlite3 *)0x2;
        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);
        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;
        p->bDestLocked = 1;
      }
      pBVar17 = p->pSrc;
    }
    pBVar2 = pBVar17->pBt;
    psStack_5c = (sqlite3 *)pBVar2->pageSize;
    pBVar12 = p->pDest->pBt;
    psStack_40 = (sqlite3 *)pBVar12->pageSize;
    uVar1 = pBVar12->pPager->journalMode;
    if (uVar1 == '\x05') {
      psVar23 = (sqlite3 *)&DAT_00000008;
      if (psStack_40 == psStack_5c) {
        psVar23 = (sqlite3 *)0x0;
      }
    }
    else {
      psVar23 = (sqlite3 *)0x0;
    }
LAB_000d6a70:
    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;
    unaff_s5 = (sqlite3 *)pBVar2->nPage;
    unaff_s8 = (sqlite3 *)&pSrcPg;
    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);
    pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);
    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);
    for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));
        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {
      unaff_s2 = (sqlite3 *)p->iNext;
      if (unaff_s5 < unaff_s2) {
        if (psVar23 == (sqlite3 *)0x0) {
          p->nPagecount = (Pgno)unaff_s5;
          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));
          goto LAB_000d6c9c;
        }
        goto LAB_000d6c94;
      }
      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;
      uVar13 = p->pSrc->pBt->pageSize;
      if (uVar13 == 0) {
        trap(7);
      }
      in_a3 = (sqlite3 *)0x2;
      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&
         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),
         psVar23 == (sqlite3 *)0x0)) {
        in_a3 = (sqlite3 *)0x0;
        in_a2 = (sqlite3 *)pSrcPg->pData;
        psVar27 = unaff_s2;
        psVar23 = (sqlite3 *)(*pcVar3)(p);
        (*pcVar4)(pSrcPg);
      }
      p->iNext = p->iNext + 1;
    }
    if (psVar23 == (sqlite3 *)0x0) {
      p->nPagecount = (Pgno)unaff_s5;
      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));
      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;
      if (p->isAttached == 0) {
        pPVar5 = p->pSrc->pBt->pPager;
        p->pNext = pPVar5->pBackup;
        pPVar5->pBackup = p;
        p->isAttached = 1;
      }
      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;
      goto LAB_000d6e5c;
    }
LAB_000d6c94:
    if (psVar23 == (sqlite3 *)&DAT_00000065) {
LAB_000d6c9c:
      if (unaff_s5 == (sqlite3 *)0x0) {
        unaff_s2 = (sqlite3 *)p->pDest;
        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);
        unaff_s2->pVdbe->nChange = 0;
        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);
        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);
        if (psVar23 == (sqlite3 *)0x0) {
          unaff_s5 = (sqlite3 *)0x1;
        }
        else {
          unaff_s5 = (sqlite3 *)0x1;
          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;
        }
      }
      in_a2 = (sqlite3 *)(p->iDestSchema + 1);
      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);
      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;
      if (p->pDestDb != (sqlite3 *)0x0) {
        (*(code *)(PTR_LAB_0018fc04 + -0x824))();
      }
      if ((uVar1 == '\x05') &&
         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))
      goto LAB_000d6e48;
      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;
      if ((int)psStack_5c < (int)psStack_40) {
        if (psStack_5c == (sqlite3 *)0x0) {
          trap(7);
        }
        iVar26 = (int)psStack_40 / (int)psStack_5c;
        if (iVar26 == 0) {
          trap(7);
        }
        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);
        uVar13 = p->pDest->pBt->pageSize;
        if (uVar13 == 0) {
          trap(7);
        }
        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==
            psVar27) {
          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);
        }
        nPage = (int)psStack_5c >> 0x1f;
        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));
        psVar6 = (sqlite3 *)
                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +
                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));
        psVar14 = pPStack_4c->fd;
        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;
        in_a3 = psVar28;
        unaff_s6 = psStack_5c;
        unaff_s7 = pcVar3;
        if (psVar27 <= unaff_s5) {
          unaff_s3 = (sqlite3 *)&pSrcPg;
          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);
          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);
          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);
          do {
            uVar13 = p->pDest->pBt->pageSize;
            if (uVar13 == 0) {
              trap(7);
            }
            in_a3 = (sqlite3 *)0x0;
            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {
              in_a2 = unaff_s3;
              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);
              if (psVar23 == (sqlite3 *)0x0) {
                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);
                (*pcVar7)(pSrcPg);
              }
              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);
              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;
            }
            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);
          } while (psVar27 <= unaff_s5);
        }
        in_a2 = (sqlite3 *)0x1;
        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);
        psStack_40 = (sqlite3 *)
                     ((int)psStack_40->aLimit +
                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);
        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);
        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {
          unaff_s5 = psVar6;
          psStack_40 = psVar28;
        }
        unaff_s3 = (sqlite3 *)
                   ((int)psStack_5c->aLimit +
                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);
        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);
        if (psVar23 == (sqlite3 *)0x0) {
          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))
             ) {
            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);
            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);
            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);
            psVar27 = unaff_s3;
            do {
              pSrcPg = (DbPage *)0x0;
              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);
              in_a3 = (sqlite3 *)0x0;
              in_a2 = (sqlite3 *)&pSrcPg;
              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);
              unaff_s7 = pcVar3;
              if (psVar23 != (sqlite3 *)0x0) {
                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);
                unaff_s3 = psVar27;
                goto LAB_000d6e48;
              }
              in_a2 = psStack_5c;
              psStack_70 = unaff_s2;
              psStack_6c = psVar27;
              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);
              (*(code *)unaff_s8)(pSrcPg);
              unaff_s3 = (sqlite3 *)
                         ((int)(((sqlite3 *)
                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit
                               + 0xffffffe5) +
                         (int)((sqlite3 *)
                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))
                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);
              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));
              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;
              psVar27 = unaff_s3;
            } while (((int)unaff_s2 < (int)unaff_s5) ||
                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));
          }
          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);
          unaff_s7 = pcVar3;
          if ((psVar23 == (sqlite3 *)0x0) &&
             ((((int)pSrcPg <= (int)psVar6 &&
               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||
              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,
              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {
            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);
            goto LAB_000d6f68;
          }
        }
        goto LAB_000d6e48;
      }
      if (psStack_40 == (sqlite3 *)0x0) {
        trap(7);
      }
      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);
      pPStack_4c->dbSize = (Pgno)unaff_s5;
      in_a2 = (sqlite3 *)0x0;
      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);
LAB_000d6f68:
      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;
      psVar27 = (sqlite3 *)0x0;
      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);
      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;
      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {
        psVar23 = (sqlite3 *)&DAT_00000065;
        goto LAB_000d6c34;
      }
      psVar23 = (sqlite3 *)&DAT_00000065;
    }
    else {
LAB_000d6e48:
      psVar27 = (sqlite3 *)0x0;
      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {
LAB_000d6c34:
        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);
        psVar27 = (sqlite3 *)0x0;
        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);
      }
      if (psVar23 == (sqlite3 *)0xc0a) {
        psVar23 = (sqlite3 *)&DAT_00000007;
      }
    }
LAB_000d6e5c:
    p->rc = (int)psVar23;
  }
  else {
    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);
    psVar23 = (sqlite3 *)p->rc;
    if (psVar23 == (sqlite3 *)0x0) {
      pBVar17 = p->pSrc;
LAB_000d6970:
      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;
      pPStack_4c = p->pDest->pBt->pPager;
      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))
      goto LAB_000d69a8;
      if (p->bDestLocked != 0) {
        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;
        psVar23 = (sqlite3 *)&DAT_00000005;
        goto LAB_000d72d0;
      }
      psVar23 = (sqlite3 *)&DAT_00000005;
      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;
LAB_000d6a44:
      pBVar17 = p->pSrc;
LAB_000d6a48:
      pBVar2 = pBVar17->pBt;
      psStack_5c = (sqlite3 *)pBVar2->pageSize;
      pBVar12 = p->pDest->pBt;
      psStack_40 = (sqlite3 *)pBVar12->pageSize;
      uVar1 = pBVar12->pPager->journalMode;
      goto LAB_000d6a70;
    }
LAB_000d7330:
    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {
      pBVar17 = p->pSrc;
      goto LAB_000d6970;
    }
  }
  if (p->pDestDb != (sqlite3 *)0x0) {
    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);
  }
  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(p->pSrc);
  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pSrcDb->mutex);
  if (psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc) {
    return (int)psVar23;
  }
  pcVar3 = sqlite3WalCheckpoint;
  psVar18 = psStack_2c;
  puVar25 = PTR___stack_chk_fail_0018fea0;
  (*(code *)PTR___stack_chk_fail_0018fea0)();
  puStack_198 = puVar25 + 0xc05d0;
  psStack_188 = psStack_70;
  p_Stack_174 = p_Stack_64;
  paStack_17c = paStack_60;
  psStack_178 = psStack_5c;
  pWStack_ac = (Wal *)**(undefined4 **)(puVar25 + 0xb8b7c);
  iStack_130 = 0;
  psStack_18c = in_a3;
  psStack_180 = psVar27;
  psStack_a8 = p;
  psStack_a4 = psVar23;
  psStack_a0 = unaff_s2;
  psStack_9c = unaff_s3;
  psStack_98 = (sqlite3 *)nPage;
  psStack_94 = unaff_s5;
  psStack_90 = unaff_s6;
  pcStack_8c = unaff_s7;
  psStack_88 = unaff_s8;
  pcStack_84 = pcVar3;
  psStack_78 = in_a2;
  if (psVar18[1].mutex.__size[0x16] == '\0') {
    in_a2 = (sqlite3 *)0x1;
    psVar27 = (sqlite3 *)0x1;
    psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();
    psVar6 = psVar28;
    if (psVar28 == (sqlite3 *)0x0) {
      psVar18[1].mutex.__size[0x15] = '\x01';
      in_a3 = (sqlite3 *)0x0;
      if (psStack_78 == (sqlite3 *)0x0) {
        psStack_170 = psStack_78;
LAB_000d7410:
        p = (sqlite3_backup *)
            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);
        psVar6 = (sqlite3 *)p;
        if (iStack_130 != 0) {
          in_a3 = (sqlite3 *)0x0;
          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {
            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;
LAB_000d7e2c:
            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);
          }
          else {
            uStack_1a0 = uStack_1a0 & 0xffffffff;
            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();
            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;
LAB_000d74f0:
            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);
            puVar25 = puStack_198;
            if (psStack_168 == (sqlite3 *)0x0) {
              if (psStack_170 == (sqlite3 *)0x0) {
                puStack_164 = (undefined4 *)0x0;
                psVar27 = unaff_s5;
                psVar6 = (sqlite3 *)0x0;
                goto LAB_000d8010;
              }
              puStack_164 = (undefined4 *)0x0;
LAB_000d7f78:
              p = (sqlite3_backup *)psStack_170;
              psVar27 = unaff_s5;
              psVar6 = psVar28;
              if (1 < (int)psStack_170) {
                sqlite3_randomness(4,&pVStack_120);
                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);
                in_a3 = (sqlite3 *)&DAT_00000004;
                psVar6 = (sqlite3 *)
                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                   (psVar18,psStack_18c,psStack_188);
                puVar25 = puStack_198;
                if (psVar6 == (sqlite3 *)0x0) {
                  if ((sqlite3 *)p == (sqlite3 *)0x3) {
                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);
                    in_a3 = (sqlite3 *)0x0;
                    psVar6 = (sqlite3 *)
                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))
                                       ((psVar18->mutex).__data.__owner);
                  }
                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);
                  puVar25 = puStack_198;
                }
              }
LAB_000d8010:
              (**(code **)(puVar25 + -0x7fa8))(puStack_164);
              unaff_s5 = psVar27;
            }
            else {
              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);
              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);
              if (psStack_15c == (sqlite3 *)&_gp) {
                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);
                p = (sqlite3_backup *)0x1;
                iStack_154 = iVar26;
                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {
                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;
                  unaff_s5 = (sqlite3 *)0x1;
                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);
                  unaff_s3 = psStack_168;
                  nPage = (int)psVar28;
                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);
                  do {
                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);
                    unaff_s2 = (sqlite3 *)psVar23->nChange;
                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);
                    psVar27 = unaff_s5;
                    if (unaff_s2 < unaff_s3) {
                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
                      psStack_16c = psVar6;
                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);
                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {
                        psVar19 = (sqlite3 *)0xffffffff;
                        if ((sqlite3 *)p == (sqlite3 *)0x1) {
                          psVar19 = unaff_s3;
                        }
                        psVar23->nChange = (int)psVar19;
                        (*(code *)psStack_168)(psVar18,psStack_16c,1);
                        in_a3 = psVar6;
                        puVar25 = puStack_198;
                      }
                      else {
                        in_a3 = psVar6;
                        unaff_s3 = unaff_s2;
                        puVar25 = puStack_198;
                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {
                          puStack_164 = (undefined4 *)0x0;
                          psVar6 = (sqlite3 *)nPage;
                          goto LAB_000d8010;
                        }
                        psStack_18c = (sqlite3 *)0x0;
                      }
                    }
                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);
                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);
                  psStack_168 = unaff_s3;
                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {
                    p = *(sqlite3_backup **)(iStack_154 + 0x60);
                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);
                    psStack_158 = (sqlite3 *)
                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);
                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);
                    unaff_s2 = (sqlite3 *)
                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);
                    psStack_134 = psVar6;
                    puVar8 = (undefined4 *)
                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);
                    unaff_s3 = psVar6;
                    puStack_164 = puVar8;
                    if (puVar8 != (undefined4 *)0x0) {
                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);
                      puVar8[1] = psVar23;
                      if ((sqlite3 *)0x1000 < psVar6) {
                        unaff_s3 = (sqlite3 *)0x1000;
                      }
                      unaff_s2 = (sqlite3 *)
                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);
                      if (unaff_s2 == (sqlite3 *)0x0) {
                        nPage = (int)&DAT_00000007;
LAB_000d799c:
                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);
                        (*(code *)p)(unaff_s2);
                        (*(code *)p)(puStack_164);
                        psVar27 = unaff_s5;
                        puVar25 = puStack_198;
                        goto LAB_000d7644;
                      }
                      p = (sqlite3_backup *)
                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);
                      psVar23 = (sqlite3 *)(uint)(p < psVar23);
                      puVar25 = puStack_198;
                      psStack_16c = (sqlite3 *)p;
                      if (psVar23 != (sqlite3 *)0x0) {
                        puVar8 = puStack_164 + (int)p * 5;
                        ppVStack_148 = &pVStack_120;
                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);
                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);
                        psVar27 = (sqlite3 *)p;
                        psStack_160 = psVar18;
                        psStack_13c = psVar28;
                        do {
                          psStack_16c = psVar27;
                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);
                          psVar18 = psStack_160;
                          psVar28 = psStack_13c;
                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;
                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;
                          if (psStack_16c == psStack_158) {
                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);
                          }
                          else {
                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);
                          }
                          puVar9 = (undefined2 *)
                                   ((int)puStack_164 +
                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);
                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);
                          puStack_150 = puVar9;
                          pVStack_11c = (Vdbe *)psStack_184;
                          if ((int)unaff_s3 < 1) {
                            psStack_12c = (sqlite3_vfs *)0x0;
                            uStack_128 = uStack_128 & 0xffffffff;
                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);
                            p = (sqlite3_backup *)0x1;
                            puVar25 = puStack_198;
LAB_000d78d0:
                            unaff_s5 = (sqlite3 *)auStack_114;
                            nPage = (int)&uStack_128;
                            psVar23 = (sqlite3 *)&psStack_12c;
                            do {
                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {
                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);
                                in_a3 = (sqlite3 *)nPage;
                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],
                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);
                                puVar25 = puStack_198;
                              }
                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);
                            } while (p < (sqlite3 *)&DAT_0000000d);
                          }
                          else {
                            psVar27 = (sqlite3 *)0x0;
                            puVar15 = puVar9;
                            do {
                              *puVar15 = (short)psVar27;
                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);
                              puVar15 = puVar15 + 1;
                            } while (psVar27 != unaff_s3);
                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);
                            pcVar3 = pcStack_144;
                            unaff_s5 = (sqlite3 *)&psStack_12c;
                            nPage = 0;
                            puVar25 = puStack_198;
                            puStack_138 = puVar8;
                            do {
                              psStack_12c = (sqlite3_vfs *)0x1;
                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);
                              if ((nPage & 1U) == 0) {
                                uVar13 = 0;
                                iVar26 = 0;
                              }
                              else {
                                psVar23 = (sqlite3 *)auStack_114;
                                uVar13 = 0;
                                do {
                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);
                                  in_a3 = (sqlite3 *)&uStack_128;
                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);
                                  uVar13 = uVar13 + 1;
                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);
                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);
                                iVar26 = uVar13 * 8;
                                puVar25 = puStack_198;
                              }
                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;
                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;
                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;
                              puVar9 = puVar9 + 1;
                            } while ((sqlite3 *)nPage != unaff_s3);
                            p = (sqlite3_backup *)(uVar13 + 1);
                            puVar8 = puStack_138;
                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;
                          }
                          puVar8[6] = pDStack_118;
                          puVar8[5] = psStack_12c;
                          puVar8[3] = puStack_150;
                          puVar8[4] = pVStack_11c;
                          puVar8 = puVar8 + 5;
                          psVar18 = psStack_160;
                          psVar28 = psStack_13c;
                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);
                        } while ((int)psStack_16c < (int)psStack_158);
                      }
                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);
                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
                      in_a3 = (sqlite3 *)0x3;
                      psVar6 = (sqlite3 *)
                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                         (psVar18,psStack_18c,psStack_188);
                      psVar27 = psStack_6c;
                      if (psVar6 != (sqlite3 *)0x0) {
                        psVar27 = unaff_s5;
                        puVar25 = puStack_198;
                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;
                        goto LAB_000d8010;
                      }
                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);
                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;
                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);
                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))
                                        ((psVar18->mutex).__data.__owner,psStack_160);
                      puVar25 = puStack_198;
                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {
                        psStack_16c = psStack_15c;
                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);
                        unaff_s2 = (sqlite3 *)
                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))
                                             ((psVar18->mutex).__data.__count,&pVStack_120);
                        nPage = (int)unaff_s2;
                        puVar25 = puStack_198;
                        if (unaff_s2 == (sqlite3 *)0x0) {
                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||
                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))
                             ) {
                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))
                                      ((psVar18->mutex).__data.__count,5,&uStack_128);
                          }
                          puVar8 = puStack_164;
                          psVar23 = (sqlite3 *)0x0;
                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;
                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);
                          iVar26 = *(int *)(puStack_198 + -0x7dc8);
                          puVar25 = puStack_198;
                          do {
                            do {
                              iVar22 = puVar8[1] + -1;
                              psVar6 = (sqlite3 *)*puVar8;
                              if (iVar22 < 0) {
                                *puStack_164 = 0xffffffff;
LAB_000d7ef8:
                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==
                                    psStack_168) {
                                  in_a3 = (sqlite3 *)
                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);
                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))
                                                    ((psVar18->mutex).__data.__count);
                                  puVar25 = puStack_198;
                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||
                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))
                                                        ((psVar18->mutex).__data.__count,psStack_160
                                                        ), puVar25 = puStack_198,
                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;
                                }
                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;
                                nPage = (int)unaff_s2;
                                goto LAB_000d7a74;
                              }
                              piVar16 = puVar8 + puVar8[1] * 5;
                              p = (sqlite3_backup *)0xffffffff;
                              do {
                                iVar10 = piVar16[-3];
                                if (iVar10 < *piVar16) {
                                  in_a3 = (sqlite3 *)piVar16[-1];
                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);
                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];
                                  while (psVar19 <= psVar6) {
                                    iVar10 = iVar10 + 1;
                                    piVar16[-3] = iVar10;
                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;
                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);
                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];
                                  }
                                  if (psVar19 < p) {
                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);
                                    p = (sqlite3_backup *)psVar19;
                                  }
                                }
LAB_000d7b7c:
                                iVar22 = iVar22 + -1;
                                piVar16 = piVar16 + -5;
                              } while (iVar22 != -1);
                              *puVar8 = p;
                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;
                              if ((psStack_180->u1).isInterrupted != 0) {
                                nPage = (int)&DAT_00000007;
                                if (psStack_180->mallocFailed == '\0') {
                                  nPage = (int)&DAT_00000009;
                                }
                                goto LAB_000d7a74;
                              }
                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||
                                    (psStack_140 < p));
                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))
                                         * ZEXT48(unaff_s3) + 0x38;
                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,
                                                       psStack_15c);
                            p = (sqlite3_backup *)
                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);
                            puVar25 = puStack_198;
                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;
                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);
                            nPage = (*(code *)(iVar26 + 0x9e0))
                                              ((psVar18->mutex).__data.__count,p_Stack_174,
                                               psStack_15c);
                            puVar25 = puStack_198;
                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);
                        }
                      }
LAB_000d7a74:
                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);
                      puVar25 = puStack_198;
                      goto LAB_000d7648;
                    }
                    psVar6 = (sqlite3 *)&DAT_00000007;
                    puVar25 = puStack_198;
                  }
                  else {
LAB_000d7644:
                    puStack_164 = (undefined4 *)0x0;
LAB_000d7648:
                    unaff_s5 = psVar27;
                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||
                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))
                    goto LAB_000d765c;
                  }
                }
                else {
                  puStack_164 = (undefined4 *)0x0;
LAB_000d765c:
                  psVar27 = unaff_s5;
                  if (psStack_170 == (sqlite3 *)0x0) {
                    psVar6 = (sqlite3 *)0x0;
                  }
                  else {
                    if ((uint)psVar18[2].mutex.__data.field_5 <=
                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)
                               (iStack_154 + 0x60)) goto LAB_000d7f78;
                    p = (sqlite3_backup *)psStack_170;
                    psVar6 = (sqlite3 *)&DAT_00000005;
                  }
                }
                goto LAB_000d8010;
              }
              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);
            }
            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))
            goto LAB_000d8034;
            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {
              *paStack_17c = psVar18[2].mutex.__data.field_5;
            }
            if (psStack_178 != (sqlite3 *)0x0) {
              psStack_178->pVfs =
                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);
            }
            if (iStack_130 != 0) goto LAB_000d7e2c;
          }
          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);
          in_a2 = (sqlite3 *)0x1;
          psVar27 = (sqlite3 *)0x1;
          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);
          psVar18[1].mutex.__size[0x15] = '\0';
          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {
            psVar6 = (sqlite3 *)&DAT_00000005;
          }
          goto LAB_000d7ea0;
        }
        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;
      }
      else {
        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
        psVar6 = (sqlite3 *)
                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                           (psVar18,psStack_18c,psStack_188);
        if (psVar6 == (sqlite3 *)0x0) {
          psVar18[1].mutex.__size[0x14] = '\x01';
          psStack_170 = psStack_78;
          goto LAB_000d7410;
        }
        if (psVar6 == (sqlite3 *)&DAT_00000005) {
          psStack_18c = (sqlite3 *)0x0;
          psStack_170 = (sqlite3 *)0x0;
          goto LAB_000d7410;
        }
        psStack_170 = psStack_78;
LAB_000d8034:
        if (iStack_130 != 0) goto LAB_000d7e2c;
      }
      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);
      in_a2 = (sqlite3 *)0x1;
      psVar27 = (sqlite3 *)0x1;
      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);
      psVar18[1].mutex.__size[0x15] = '\0';
    }
  }
  else {
    psVar6 = (sqlite3 *)&DAT_00000008;
  }
LAB_000d7ea0:
  if (pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)) {
    return (int)psVar6;
  }
  pcVar3 = *(code **)(puStack_198 + -0x7a80);
  pcVar4 = sqlite3WalClose;
  pWal = pWStack_ac;
  (*pcVar3)();
  puVar24 = uStack_1a0._0_4_;
  pPStack_1d4 = (Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c);
  psStack_1cc = (sqlite3 *)p;
  psStack_1c8 = psVar23;
  psStack_1c4 = unaff_s2;
  psStack_1c0 = unaff_s3;
  psStack_1bc = (sqlite3 *)nPage;
  psStack_1b8 = unaff_s5;
  pcStack_1b4 = pcVar4;
  if (pWal == (Wal *)0x0) {
    iVar26 = 0;
    goto LAB_000d8300;
  }
  if (uStack_1a0._0_4_ == (u8 *)0x0) {
    iVar26 = 0;
LAB_000d82a0:
    psVar27 = (sqlite3 *)0x0;
    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);
    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);
    ppuVar20 = pWal->apWiData;
  }
  else {
    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);
    if (iVar26 != 0) goto LAB_000d82a0;
    if (pWal->exclusiveMode == '\0') {
      pWal->exclusiveMode = '\x01';
    }
    iVar26 = sqlite3WalCheckpoint
                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,
                        puVar24,(int *)0x0,(int *)0x0);
    if (iVar26 != 0) goto LAB_000d82a0;
    iStack_1d8 = -1;
    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);
    if (iStack_1d8 == 1) {
      if (-1 < *(int *)&pWal->mxWalSize) {
        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);
      }
      psVar27 = (sqlite3 *)0x0;
      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);
      ppuVar20 = pWal->apWiData;
    }
    else {
      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();
      psVar27 = (sqlite3 *)pWal->zWalName;
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();
      ppuVar20 = pWal->apWiData;
    }
  }
  pcVar4 = *(code **)(pcVar3 + 0xb78d8);
  (*pcVar4)(ppuVar20);
  (*pcVar4)(pWal);
LAB_000d8300:
  if (pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)) {
    return iVar26;
  }
  pcVar3 = *(code **)(pcVar3 + 0xb7e00);
  pPVar5 = pPStack_1d4;
  (*pcVar3)();
  puVar24 = (u8 *)pPVar5->pTmpSpace;
  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();
  pPVar21 = pPVar5->pMmapFreelist;
  if (pPVar21 != (PgHdr *)0x0) {
    pcVar4 = *(code **)(pcVar3 + 0xb7634);
    do {
      pPVar21 = pPVar21->pDirty;
      (*pcVar4)();
    } while (pPVar21 != (PgHdr *)0x0);
  }
  pPVar5->exclusiveMode = '\0';
  if (psVar27 == (sqlite3 *)0x0) {
    zBuf = (u8 *)0x0;
  }
  else if ((psVar27->flags & 0x800) == 0) {
    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);
    zBuf = puVar24;
    if (iVar26 != 0) {
      zBuf = (u8 *)0x0;
    }
  }
  else {
    zBuf = (u8 *)0x0;
  }
  sqlite3WalClose(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf);
  pPVar5->pWal = (Wal *)0x0;
  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(pPVar5);
  if (pPVar5->memDb == '\0') {
    if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {
      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();
      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);
    }
    pagerUnlockAndRollback(pPVar5);
    iVar26 = *(int *)(pcVar3 + 0xb7814);
  }
  else {
    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();
    iVar26 = *(int *)(pcVar3 + 0xb7814);
  }
  (*(code *)(iVar26 + 0xd98))();
  iVar26 = *(int *)(pcVar3 + 0xb7814);
  (*(code *)(iVar26 + 0x968))(pPVar5->jfd);
  (*(code *)(iVar26 + 0x968))(pPVar5->fd);
  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(puVar24);
  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))(pPVar5->pPCache->pCache);
  (**(code **)(pcVar3 + 0xb7634))(pPVar5);
  return 0;
}



code *******
sqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)

{
  char cVar1;
  code *****pppppcVar2;
  code *pcVar3;
  code *pcVar4;
  code ****ppppcVar5;
  code *******pppppppcVar6;
  code *pcVar7;
  undefined4 *puVar8;
  undefined2 *puVar9;
  int iVar10;
  undefined4 uVar11;
  code ***pppcVar12;
  int extraout_v1;
  undefined2 *puVar13;
  int *piVar14;
  code ******ppppppcVar15;
  code *******pppppppcVar16;
  undefined4 uVar17;
  int iVar18;
  uint uVar19;
  uint uVar20;
  code *******pppppppcVar21;
  code *******unaff_s2;
  code *******unaff_s3;
  code *******unaff_s5;
  code *******unaff_s6;
  code *unaff_s7;
  undefined *puVar22;
  code *******unaff_s8;
  int iVar23;
  code *******pppppppcVar24;
  code *******pppppppcVar25;
  int iStack_1d8;
  int iStack_1d4;
  code ******ppppppcStack_1cc;
  code ******ppppppcStack_1c8;
  code ******ppppppcStack_1c4;
  code ******ppppppcStack_1c0;
  code ******ppppppcStack_1bc;
  code ******ppppppcStack_1b8;
  code *pcStack_1b4;
  undefined8 uStack_1a0;
  undefined *puStack_198;
  code ******ppppppcStack_18c;
  code ******ppppppcStack_188;
  code ******ppppppcStack_184;
  code ******ppppppcStack_180;
  code ***pppcStack_17c;
  code ******ppppppcStack_178;
  undefined4 uStack_174;
  code ******ppppppcStack_170;
  code ******ppppppcStack_16c;
  code ******ppppppcStack_168;
  undefined4 *puStack_164;
  uint uStack_160;
  code ******ppppppcStack_15c;
  code ******ppppppcStack_158;
  int iStack_154;
  undefined2 *puStack_150;
  code *pcStack_14c;
  code *****pppppcStack_148;
  code *pcStack_144;
  code ******ppppppcStack_140;
  code ******ppppppcStack_13c;
  undefined4 *puStack_138;
  code ******ppppppcStack_134;
  int iStack_130;
  code *****pppppcStack_12c;
  undefined8 uStack_128;
  code *****pppppcStack_120;
  code ******ppppppcStack_11c;
  int iStack_118;
  code *****apppppcStack_114 [27];
  code ******ppppppcStack_a8;
  code ******ppppppcStack_a4;
  code ******ppppppcStack_a0;
  code ******ppppppcStack_9c;
  code ******ppppppcStack_98;
  code ******ppppppcStack_94;
  code ******ppppppcStack_90;
  code *pcStack_8c;
  code ******ppppppcStack_88;
  code *pcStack_84;
  code ******ppppppcStack_78;
  code ******local_70;
  code ******local_6c;
  undefined4 uStack_64;
  code ***local_60;
  code ******local_5c;
  code *****local_50;
  code ***local_4c;
  code ******local_40;
  code ******local_38;
  code ******local_34;
  uint local_2c;
  
  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;
  pppppppcVar24 = param_2;
  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);
  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);
  if (*param_1 == (code ******)0x0) {
    pppppppcVar21 = (code *******)param_1[7];
    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;
    ppppppcVar15 = param_1[6];
    local_60 = (code ***)*ppppppcVar15[1];
    local_4c = (code ***)*param_1[1][1];
LAB_000d69a8:
    param_3 = (code *******)0x0;
    if (*(char *)(ppppppcVar15 + 2) == '\0') {
      pppppppcVar24 = (code *******)0x0;
      pppppppcVar21 = (code *******)FUN_000cb3f8();
      if (param_1[3] == (code ******)0x0) {
        local_50 = (code *****)0x1;
        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;
        goto LAB_000d6aa4;
      }
      local_50 = (code *****)0x1;
LAB_000d72d0:
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;
      ppppppcVar15 = param_1[6];
    }
    else {
      local_50 = (code *****)param_1[3];
      if ((code ******)local_50 == (code ******)0x0) {
LAB_000d6aa4:
        param_4 = (code *******)0x0;
        param_3 = (code *******)0xffffffff;
        pppppppcVar24 = (code *******)param_1[6][1][8];
        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);
        if (iVar23 != 7) goto LAB_000d69c4;
        ppppppcVar15 = param_1[6];
        pppppppcVar21 = (code *******)&DAT_00000007;
        goto LAB_000d6a48;
      }
      local_50 = (code *****)0x0;
LAB_000d69c4:
      param_3 = param_1 + 2;
      if (param_1[3] == (code ******)0x0) {
        pppppppcVar24 = (code *******)0x2;
        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);
        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;
        param_1[3] = (code ******)0x1;
      }
      ppppppcVar15 = param_1[6];
    }
    pppppcVar2 = ppppppcVar15[1];
    local_5c = (code ******)pppppcVar2[8];
    local_40 = (code ******)param_1[1][1][8];
    cVar1 = *(char *)((int)*param_1[1][1] + 5);
    if (cVar1 == '\x05') {
      pppppppcVar21 = (code *******)&DAT_00000008;
      if (local_40 == local_5c) {
        pppppppcVar21 = (code *******)0x0;
      }
    }
    else {
      pppppppcVar21 = (code *******)0x0;
    }
LAB_000d6a70:
    unaff_s6 = (code *******)PTR_DAT_0018f948;
    unaff_s5 = (code *******)pppppcVar2[0xb];
    unaff_s8 = &local_38;
    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);
    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);
    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);
    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));
        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {
      unaff_s2 = (code *******)param_1[4];
      if (unaff_s5 < unaff_s2) {
        if (pppppppcVar21 == (code *******)0x0) {
          param_1[9] = (code ******)unaff_s5;
          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));
          goto LAB_000d6c9c;
        }
        goto LAB_000d6c94;
      }
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;
      if (param_1[6][1][8] == (code ****)0x0) {
        trap(7);
      }
      param_4 = (code *******)0x2;
      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=
           unaff_s2) &&
         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,
         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {
        param_4 = (code *******)0x0;
        param_3 = (code *******)local_38[1];
        pppppppcVar24 = unaff_s2;
        pppppppcVar21 = (code *******)(*pcVar3)(param_1);
        (*pcVar4)(local_38);
      }
      param_1[4] = (code ******)((int)param_1[4] + 1);
    }
    if (pppppppcVar21 == (code *******)0x0) {
      param_1[9] = (code ******)unaff_s5;
      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));
      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;
      if (param_1[10] == (code ******)0x0) {
        ppppcVar5 = *param_1[6][1];
        param_1[0xb] = (code ******)ppppcVar5[0x16];
        ppppcVar5[0x16] = (code ***)param_1;
        param_1[10] = (code ******)0x1;
      }
      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;
      goto LAB_000d6e5c;
    }
LAB_000d6c94:
    if (pppppppcVar21 == (code *******)0x65) {
LAB_000d6c9c:
      if (unaff_s5 == (code *******)0x0) {
        unaff_s2 = (code *******)param_1[1];
        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);
        unaff_s2[1][0xb] = (code *****)0x0;
        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);
        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);
        if (pppppppcVar21 == (code *******)0x0) {
          unaff_s5 = (code *******)0x1;
        }
        else {
          unaff_s5 = (code *******)0x1;
          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;
        }
      }
      param_3 = (code *******)((int)param_1[2] + 1);
      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
      if (*param_1 != (code ******)0x0) {
        (*(code *)(PTR_LAB_0018fc04 + -0x824))();
      }
      if ((cVar1 == '\x05') &&
         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),
         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;
      pcVar3 = (code *)PTR_DAT_0018f948;
      if ((int)local_5c < (int)local_40) {
        if ((code *******)local_5c == (code *******)0x0) {
          trap(7);
        }
        iVar23 = (int)local_40 / (int)local_5c;
        if (iVar23 == 0) {
          trap(7);
        }
        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);
        if (param_1[1][1][8] == (code ****)0x0) {
          trap(7);
        }
        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==
            pppppppcVar24) {
          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);
        }
        param_2 = (code *******)((int)local_5c >> 0x1f);
        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));
        pppppppcVar6 = (code *******)
                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +
                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));
        pppcVar12 = (code ***)local_4c[0xf];
        unaff_s5 = (code *******)local_4c[6];
        param_4 = pppppppcVar25;
        unaff_s6 = (code *******)local_5c;
        unaff_s7 = pcVar3;
        if (pppppppcVar24 <= unaff_s5) {
          unaff_s3 = &local_38;
          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);
          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);
          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);
          do {
            if (param_1[1][1][8] == (code ****)0x0) {
              trap(7);
            }
            param_4 = (code *******)0x0;
            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=
                pppppppcVar24) {
              param_3 = unaff_s3;
              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);
              if (pppppppcVar21 == (code *******)0x0) {
                pppppppcVar21 = (code *******)(*pcVar4)(local_38);
                (*pcVar7)(local_38);
              }
              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);
              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
            }
            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);
          } while (pppppppcVar24 <= unaff_s5);
        }
        param_3 = (code *******)0x1;
        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);
        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));
        unaff_s5 = (code *******)((int)local_40 >> 0x1f);
        if (((int)pppppppcVar6 < (int)unaff_s5) ||
           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {
          unaff_s5 = pppppppcVar6;
          local_40 = (code ******)pppppppcVar25;
        }
        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));
        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);
        if (pppppppcVar21 == (code *******)0x0) {
          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))
          {
            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);
            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);
            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);
            pppppppcVar24 = unaff_s3;
            do {
              local_38 = (code ******)0x0;
              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);
              param_4 = (code *******)0x0;
              param_3 = &local_38;
              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);
              unaff_s7 = pcVar3;
              if (pppppppcVar21 != (code *******)0x0) {
                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);
                unaff_s3 = pppppppcVar24;
                goto LAB_000d6e48;
              }
              param_3 = (code *******)local_5c;
              local_70 = (code ******)unaff_s2;
              local_6c = (code ******)pppppppcVar24;
              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);
              (*(code *)unaff_s8)(local_38);
              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);
              unaff_s2 = (code *******)
                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));
              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
              pppppppcVar24 = unaff_s3;
            } while (((int)unaff_s2 < (int)unaff_s5) ||
                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));
          }
          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);
          unaff_s7 = pcVar3;
          if ((pppppppcVar21 == (code *******)0x0) &&
             ((((int)local_38 <= (int)pppppppcVar6 &&
               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||
              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),
              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))
             ) {
            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);
            goto LAB_000d6f68;
          }
        }
        goto LAB_000d6e48;
      }
      if ((code *******)local_40 == (code *******)0x0) {
        trap(7);
      }
      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);
      local_4c[6] = (code **)unaff_s5;
      param_3 = (code *******)0x0;
      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);
LAB_000d6f68:
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
      pppppppcVar24 = (code *******)0x0;
      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
      if ((code ******)local_50 != (code ******)0x0) {
        pppppppcVar21 = (code *******)0x65;
        goto LAB_000d6c34;
      }
      pppppppcVar21 = (code *******)0x65;
    }
    else {
LAB_000d6e48:
      pppppppcVar24 = (code *******)0x0;
      if ((code ******)local_50 != (code ******)0x0) {
LAB_000d6c34:
        FUN_000d6488(param_1[6],0);
        pppppppcVar24 = (code *******)0x0;
        FUN_000ca0b8(param_1[6]);
      }
      if (pppppppcVar21 == (code *******)0xc0a) {
        pppppppcVar21 = (code *******)&DAT_00000007;
      }
    }
LAB_000d6e5c:
    param_1[7] = (code ******)pppppppcVar21;
  }
  else {
    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);
    pppppppcVar21 = (code *******)param_1[7];
    if (pppppppcVar21 == (code *******)0x0) {
      ppppppcVar15 = param_1[6];
LAB_000d6970:
      local_60 = (code ***)*ppppppcVar15[1];
      local_4c = (code ***)*param_1[1][1];
      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))
      goto LAB_000d69a8;
      if (param_1[3] != (code ******)0x0) {
        local_50 = (code *****)0x0;
        pppppppcVar21 = (code *******)&DAT_00000005;
        goto LAB_000d72d0;
      }
      pppppppcVar21 = (code *******)&DAT_00000005;
      local_50 = (code *****)0x0;
LAB_000d6a44:
      ppppppcVar15 = param_1[6];
LAB_000d6a48:
      pppppcVar2 = ppppppcVar15[1];
      local_5c = (code ******)pppppcVar2[8];
      local_40 = (code ******)param_1[1][1][8];
      cVar1 = *(char *)((int)*param_1[1][1] + 5);
      goto LAB_000d6a70;
    }
LAB_000d7330:
    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {
      ppppppcVar15 = param_1[6];
      goto LAB_000d6970;
    }
  }
  if (*param_1 != (code ******)0x0) {
    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);
  }
  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);
  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);
  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {
    return pppppppcVar21;
  }
  pcVar3 = FUN_000d7350;
  uVar20 = local_2c;
  puVar22 = PTR___stack_chk_fail_0018fea0;
  (*(code *)PTR___stack_chk_fail_0018fea0)();
  puStack_198 = puVar22 + 0xc05d0;
  ppppppcStack_188 = local_70;
  uStack_174 = uStack_64;
  pppcStack_17c = local_60;
  ppppppcStack_178 = local_5c;
  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);
  iStack_130 = 0;
  ppppppcStack_18c = (code ******)param_4;
  ppppppcStack_180 = (code ******)pppppppcVar24;
  ppppppcStack_a8 = (code ******)param_1;
  ppppppcStack_a4 = (code ******)pppppppcVar21;
  ppppppcStack_a0 = (code ******)unaff_s2;
  ppppppcStack_9c = (code ******)unaff_s3;
  ppppppcStack_98 = (code ******)param_2;
  ppppppcStack_94 = (code ******)unaff_s5;
  ppppppcStack_90 = (code ******)unaff_s6;
  pcStack_8c = unaff_s7;
  ppppppcStack_88 = (code ******)unaff_s8;
  pcStack_84 = pcVar3;
  ppppppcStack_78 = (code ******)param_3;
  if (*(char *)(uVar20 + 0x2e) == '\0') {
    param_3 = (code *******)0x1;
    pppppppcVar24 = (code *******)0x1;
    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();
    pppppppcVar6 = pppppppcVar25;
    if (pppppppcVar25 == (code *******)0x0) {
      *(undefined1 *)(uVar20 + 0x2d) = 1;
      param_4 = (code *******)0x0;
      if ((code *******)ppppppcStack_78 == (code *******)0x0) {
        ppppppcStack_170 = ppppppcStack_78;
LAB_000d7410:
        param_1 = (code *******)
                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);
        pppppppcVar6 = param_1;
        if (iStack_130 != 0) {
          param_4 = (code *******)0x0;
          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {
            if (param_1 == (code *******)0x0) goto LAB_000d74f0;
LAB_000d7e2c:
            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);
          }
          else {
            uStack_1a0 = uStack_1a0 & 0xffffffff;
            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();
            if (param_1 != (code *******)0x0) goto LAB_000d8034;
LAB_000d74f0:
            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);
            puVar22 = puStack_198;
            if ((code *******)ppppppcStack_168 == (code *******)0x0) {
              if ((code *******)ppppppcStack_170 == (code *******)0x0) {
                puStack_164 = (undefined4 *)0x0;
                pppppppcVar24 = unaff_s5;
                pppppppcVar6 = (code *******)0x0;
                goto LAB_000d8010;
              }
              puStack_164 = (undefined4 *)0x0;
LAB_000d7f78:
              param_1 = (code *******)ppppppcStack_170;
              pppppppcVar24 = unaff_s5;
              pppppppcVar6 = pppppppcVar25;
              if (1 < (int)ppppppcStack_170) {
                sqlite3_randomness(4,&pppppcStack_120);
                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);
                param_4 = (code *******)&DAT_00000004;
                pppppppcVar6 = (code *******)
                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);
                puVar22 = puStack_198;
                if (pppppppcVar6 == (code *******)0x0) {
                  if (param_1 == (code *******)0x3) {
                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);
                    param_4 = (code *******)0x0;
                    pppppppcVar6 = (code *******)
                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))
                                             (*(undefined4 *)(uVar20 + 8));
                  }
                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);
                  puVar22 = puStack_198;
                }
              }
LAB_000d8010:
              (**(code **)(puVar22 + -0x7fa8))(puStack_164);
              unaff_s5 = pppppppcVar24;
            }
            else {
              ppppppcStack_15c =
                   (code ******)
                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);
              if (ppppppcStack_15c == (code ******)&_gp_1) {
                iVar23 = **(int **)(uVar20 + 0x20);
                param_1 = (code *******)0x1;
                iStack_154 = iVar23;
                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {
                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);
                  unaff_s5 = (code *******)0x1;
                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);
                  unaff_s3 = (code *******)ppppppcStack_168;
                  param_2 = pppppppcVar25;
                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);
                  do {
                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);
                    unaff_s2 = (code *******)pppppppcVar21[0x19];
                    pppppppcVar6 = (code *******)((int)param_1 + 3);
                    pppppppcVar24 = unaff_s5;
                    if (unaff_s2 < unaff_s3) {
                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
                      ppppppcStack_16c = (code ******)pppppppcVar6;
                      param_2 = (code *******)
                                (*(code *)ppppppcStack_184)
                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);
                      if (param_2 == (code *******)0x0) {
                        pppppppcVar16 = (code *******)0xffffffff;
                        if (param_1 == (code *******)0x1) {
                          pppppppcVar16 = unaff_s3;
                        }
                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;
                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);
                        param_4 = pppppppcVar6;
                        puVar22 = puStack_198;
                      }
                      else {
                        param_4 = pppppppcVar6;
                        unaff_s3 = unaff_s2;
                        puVar22 = puStack_198;
                        if (param_2 != (code *******)&DAT_00000005) {
                          puStack_164 = (undefined4 *)0x0;
                          pppppppcVar6 = param_2;
                          goto LAB_000d8010;
                        }
                        ppppppcStack_18c = (code ******)0x0;
                      }
                    }
                    param_1 = (code *******)((int)param_1 + 1);
                  } while (param_1 != (code *******)&DAT_00000005);
                  ppppppcStack_168 = (code ******)unaff_s3;
                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {
                    param_1 = *(code ********)(iStack_154 + 0x60);
                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);
                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);
                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);
                    unaff_s2 = (code *******)
                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);
                    ppppppcStack_134 = (code ******)pppppppcVar6;
                    puVar8 = (undefined4 *)
                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);
                    unaff_s3 = pppppppcVar6;
                    puStack_164 = puVar8;
                    if (puVar8 != (undefined4 *)0x0) {
                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);
                      puVar8[1] = pppppppcVar21;
                      if ((code *******)0x1000 < pppppppcVar6) {
                        unaff_s3 = (code *******)0x1000;
                      }
                      unaff_s2 = (code *******)
                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);
                      if (unaff_s2 == (code *******)0x0) {
                        param_2 = (code *******)&DAT_00000007;
LAB_000d799c:
                        param_1 = *(code ********)(puStack_198 + -0x7fa8);
                        (*(code *)param_1)(unaff_s2);
                        (*(code *)param_1)(puStack_164);
                        pppppppcVar24 = unaff_s5;
                        puVar22 = puStack_198;
                        goto LAB_000d7644;
                      }
                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);
                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);
                      puVar22 = puStack_198;
                      ppppppcStack_16c = (code ******)param_1;
                      if (pppppppcVar21 != (code *******)0x0) {
                        puVar8 = puStack_164 + (int)param_1 * 5;
                        pppppcStack_148 = (code *****)&pppppcStack_120;
                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);
                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);
                        pppppppcVar24 = param_1;
                        uStack_160 = uVar20;
                        ppppppcStack_13c = (code ******)pppppppcVar25;
                        do {
                          ppppppcStack_16c = (code ******)pppppppcVar24;
                          param_2 = (code *******)
                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);
                          uVar20 = uStack_160;
                          pppppppcVar25 = (code *******)ppppppcStack_13c;
                          if (param_2 != (code *******)0x0) goto LAB_000d799c;
                          ppppppcStack_184 = ppppppcStack_11c + 1;
                          if (ppppppcStack_16c == ppppppcStack_158) {
                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);
                          }
                          else {
                            unaff_s3 = (code *******)
                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);
                          }
                          puVar9 = (undefined2 *)
                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);
                          iStack_118 = iStack_118 + 1;
                          puStack_150 = puVar9;
                          ppppppcStack_11c = ppppppcStack_184;
                          if ((int)unaff_s3 < 1) {
                            pppppcStack_12c = (code *****)0x0;
                            uStack_128 = uStack_128 & 0xffffffff;
                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);
                            param_1 = (code *******)0x1;
                            puVar22 = puStack_198;
LAB_000d78d0:
                            unaff_s5 = (code *******)apppppcStack_114;
                            param_2 = (code *******)&uStack_128;
                            pppppppcVar21 = (code *******)&pppppcStack_12c;
                            do {
                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {
                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);
                                param_4 = param_2;
                                (*pcStack_144)(ppppppcStack_184,
                                               apppppcStack_114[(int)param_1 * 2 + 1],
                                               unaff_s5[(int)param_1 * 2]);
                                puVar22 = puStack_198;
                              }
                              param_1 = (code *******)((int)param_1 + 1);
                            } while (param_1 < &DAT_0000000d);
                          }
                          else {
                            pppppppcVar24 = (code *******)0x0;
                            puVar13 = puVar9;
                            do {
                              *puVar13 = (short)pppppppcVar24;
                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);
                              puVar13 = puVar13 + 1;
                            } while (pppppppcVar24 != unaff_s3);
                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);
                            pcVar3 = pcStack_144;
                            unaff_s5 = (code *******)&pppppcStack_12c;
                            param_2 = (code *******)0x0;
                            puVar22 = puStack_198;
                            puStack_138 = puVar8;
                            do {
                              pppppcStack_12c = (code *****)0x1;
                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);
                              if (((uint)param_2 & 1) == 0) {
                                uVar20 = 0;
                                iVar23 = 0;
                              }
                              else {
                                pppppppcVar21 = (code *******)apppppcStack_114;
                                uVar20 = 0;
                                do {
                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);
                                  param_4 = (code *******)&uStack_128;
                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);
                                  uVar20 = uVar20 + 1;
                                  pppppppcVar21 = pppppppcVar21 + 2;
                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);
                                iVar23 = uVar20 * 8;
                                puVar22 = puStack_198;
                              }
                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_
                              ;
                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;
                              param_2 = (code *******)((int)param_2 + 1);
                              puVar9 = puVar9 + 1;
                            } while (param_2 != unaff_s3);
                            param_1 = (code *******)(uVar20 + 1);
                            puVar8 = puStack_138;
                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;
                          }
                          puVar8[6] = iStack_118;
                          puVar8[5] = pppppcStack_12c;
                          puVar8[3] = puStack_150;
                          puVar8[4] = ppppppcStack_11c;
                          puVar8 = puVar8 + 5;
                          uVar20 = uStack_160;
                          pppppppcVar25 = (code *******)ppppppcStack_13c;
                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);
                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);
                      }
                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);
                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
                      param_4 = (code *******)0x3;
                      pppppppcVar6 = (code *******)
                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);
                      pppppppcVar24 = (code *******)local_6c;
                      if (pppppppcVar6 != (code *******)0x0) {
                        pppppppcVar24 = unaff_s5;
                        puVar22 = puStack_198;
                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;
                        goto LAB_000d8010;
                      }
                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);
                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;
                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;
                      param_2 = (code *******)
                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))
                                          (*(undefined4 *)(uVar20 + 8),uStack_160);
                      puVar22 = puStack_198;
                      if (param_2 == (code *******)0x0) {
                        ppppppcStack_16c = ppppppcStack_15c;
                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);
                        unaff_s2 = (code *******)
                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))
                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);
                        param_2 = unaff_s2;
                        puVar22 = puStack_198;
                        if (unaff_s2 == (code *******)0x0) {
                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||
                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&
                              (ppppppcStack_11c < uStack_128._4_4_)))) {
                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))
                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);
                          }
                          puVar8 = puStack_164;
                          pppppppcVar21 = (code *******)0x0;
                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);
                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);
                          iVar23 = *(int *)(puStack_198 + -0x7dc8);
                          puVar22 = puStack_198;
                          do {
                            do {
                              iVar18 = puVar8[1] + -1;
                              pppppppcVar6 = (code *******)*puVar8;
                              if (iVar18 < 0) {
                                *puStack_164 = 0xffffffff;
LAB_000d7ef8:
                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==
                                    (code *******)ppppppcStack_168) {
                                  param_4 = (code *******)
                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);
                                  param_2 = (code *******)
                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))
                                                      (*(undefined4 *)(uVar20 + 4));
                                  puVar22 = puStack_198;
                                  if ((param_2 != (code *******)0x0) ||
                                     (param_2 = (code *******)
                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))
                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),
                                     puVar22 = puStack_198, param_2 != (code *******)0x0))
                                  goto LAB_000d7a74;
                                }
                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;
                                param_2 = unaff_s2;
                                goto LAB_000d7a74;
                              }
                              piVar14 = puVar8 + puVar8[1] * 5;
                              param_1 = (code *******)0xffffffff;
                              do {
                                iVar10 = piVar14[-3];
                                if (iVar10 < *piVar14) {
                                  param_4 = (code *******)piVar14[-1];
                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);
                                  pppppppcVar16 = (code *******)param_4[uVar19];
                                  while (pppppppcVar16 <= pppppppcVar6) {
                                    iVar10 = iVar10 + 1;
                                    piVar14[-3] = iVar10;
                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;
                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);
                                    pppppppcVar16 = (code *******)param_4[uVar19];
                                  }
                                  if (pppppppcVar16 < param_1) {
                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);
                                    param_1 = pppppppcVar16;
                                  }
                                }
LAB_000d7b7c:
                                iVar18 = iVar18 + -1;
                                piVar14 = piVar14 + -5;
                              } while (iVar18 != -1);
                              *puVar8 = param_1;
                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;
                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {
                                param_2 = (code *******)&DAT_00000007;
                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {
                                  param_2 = (code *******)&DAT_00000009;
                                }
                                goto LAB_000d7a74;
                              }
                            } while (((pppppppcVar21 <= ppppppcStack_184) ||
                                     (ppppppcStack_168 < pppppppcVar21)) ||
                                    (ppppppcStack_140 < param_1));
                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *
                                         ZEXT48(unaff_s3) + 0x38;
                            param_2 = (code *******)
                                      (*(code *)pppppppcVar24)
                                                (*(undefined4 *)(uVar20 + 8),uStack_174,
                                                 ppppppcStack_15c);
                            param_1 = (code *******)((int)param_1 + -1);
                            puVar22 = puStack_198;
                            if (param_2 != (code *******)0x0) break;
                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);
                            param_2 = (code *******)
                                      (*(code *)(iVar23 + 0x9e0))
                                                (*(undefined4 *)(uVar20 + 4),uStack_174,
                                                 ppppppcStack_15c);
                            puVar22 = puStack_198;
                          } while (param_2 == (code *******)0x0);
                        }
                      }
LAB_000d7a74:
                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);
                      puVar22 = puStack_198;
                      goto LAB_000d7648;
                    }
                    pppppppcVar6 = (code *******)&DAT_00000007;
                    puVar22 = puStack_198;
                  }
                  else {
LAB_000d7644:
                    puStack_164 = (undefined4 *)0x0;
LAB_000d7648:
                    unaff_s5 = pppppppcVar24;
                    if ((param_2 == (code *******)&DAT_00000005) ||
                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;
                  }
                }
                else {
                  puStack_164 = (undefined4 *)0x0;
LAB_000d765c:
                  pppppppcVar24 = unaff_s5;
                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {
                    pppppppcVar6 = (code *******)0x0;
                  }
                  else {
                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;
                    param_1 = (code *******)ppppppcStack_170;
                    pppppppcVar6 = (code *******)&DAT_00000005;
                  }
                }
                goto LAB_000d8010;
              }
              pppppppcVar6 = (code *******)
                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);
            }
            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)
               ) goto LAB_000d8034;
            if ((code ****)pppcStack_17c != (code ****)0x0) {
              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);
            }
            if ((code *******)ppppppcStack_178 != (code *******)0x0) {
              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);
            }
            if (iStack_130 != 0) goto LAB_000d7e2c;
          }
          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);
          param_3 = (code *******)0x1;
          pppppppcVar24 = (code *******)0x1;
          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);
          *(undefined1 *)(uVar20 + 0x2d) = 0;
          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {
            pppppppcVar6 = (code *******)&DAT_00000005;
          }
          goto LAB_000d7ea0;
        }
        if (param_1 == (code *******)0x0) goto LAB_000d74f0;
      }
      else {
        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
        pppppppcVar6 = (code *******)
                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);
        if (pppppppcVar6 == (code *******)0x0) {
          *(undefined1 *)(uVar20 + 0x2c) = 1;
          ppppppcStack_170 = ppppppcStack_78;
          goto LAB_000d7410;
        }
        if (pppppppcVar6 == (code *******)&DAT_00000005) {
          ppppppcStack_18c = (code ******)0x0;
          ppppppcStack_170 = (code ******)0x0;
          goto LAB_000d7410;
        }
        ppppppcStack_170 = ppppppcStack_78;
LAB_000d8034:
        if (iStack_130 != 0) goto LAB_000d7e2c;
      }
      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);
      param_3 = (code *******)0x1;
      pppppppcVar24 = (code *******)0x1;
      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);
      *(undefined1 *)(uVar20 + 0x2d) = 0;
    }
  }
  else {
    pppppppcVar6 = (code *******)&DAT_00000008;
  }
LAB_000d7ea0:
  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {
    return pppppppcVar6;
  }
  pcVar3 = *(code **)(puStack_198 + -0x7a80);
  pcVar4 = FUN_000d80a0;
  pppppcVar2 = apppppcStack_114[0x1a];
  (*pcVar3)();
  iVar23 = uStack_1a0._0_4_;
  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);
  ppppppcStack_1cc = (code ******)param_1;
  ppppppcStack_1c8 = (code ******)pppppppcVar21;
  ppppppcStack_1c4 = (code ******)unaff_s2;
  ppppppcStack_1c0 = (code ******)unaff_s3;
  ppppppcStack_1bc = (code ******)param_2;
  ppppppcStack_1b8 = (code ******)unaff_s5;
  pcStack_1b4 = pcVar4;
  if (pppppcVar2 == (code *****)0x0) {
    pppppppcVar21 = (code *******)0x0;
    goto LAB_000d8300;
  }
  if (uStack_1a0._0_4_ == 0) {
    pppppppcVar21 = (code *******)0x0;
LAB_000d82a0:
    pppppppcVar24 = (code *******)0x0;
    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);
    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);
    uVar17 = pppppcVar2[8];
  }
  else {
    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);
    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;
    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {
      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;
    }
    pppppppcVar21 =
         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);
    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;
    iStack_1d8 = -1;
    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);
    if (iStack_1d8 == 1) {
      if (-1 < (int)pppppcVar2[4]) {
        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);
      }
      pppppppcVar24 = (code *******)0x0;
      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);
      uVar17 = pppppcVar2[8];
    }
    else {
      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();
      pppppppcVar24 = (code *******)pppppcVar2[0x1b];
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();
      uVar17 = pppppcVar2[8];
    }
  }
  pcVar4 = *(code **)(pcVar3 + 0xb78d8);
  (*pcVar4)(uVar17);
  (*pcVar4)(pppppcVar2);
LAB_000d8300:
  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {
    return pppppppcVar21;
  }
  pcVar3 = *(code **)(pcVar3 + 0xb7e00);
  iVar23 = iStack_1d4;
  (*pcVar3)();
  uVar17 = *(undefined4 *)(iVar23 + 0xd0);
  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();
  iVar18 = *(int *)(iVar23 + 0x88);
  if (iVar18 != 0) {
    pcVar4 = *(code **)(pcVar3 + 0xb7634);
    do {
      iVar18 = *(int *)(iVar18 + 0x10);
      (*pcVar4)();
    } while (iVar18 != 0);
  }
  *(undefined1 *)(iVar23 + 4) = 0;
  if (pppppppcVar24 == (code *******)0x0) {
    uVar11 = 0;
  }
  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {
    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);
    uVar11 = uVar17;
    if (iVar18 != 0) {
      uVar11 = 0;
    }
  }
  else {
    uVar11 = 0;
  }
  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),
               *(undefined4 *)(iVar23 + 0x98),uVar11);
  *(undefined4 *)(iVar23 + 0xd8) = 0;
  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);
  if (*(char *)(iVar23 + 0xf) == '\0') {
    if (**(int **)(iVar23 + 0x40) != 0) {
      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();
      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);
    }
    FUN_000c96c0(iVar23);
    iVar18 = *(int *)(pcVar3 + 0xb7814);
  }
  else {
    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);
    iVar18 = *(int *)(pcVar3 + 0xb7814);
  }
  (*(code *)(iVar18 + 0xd98))();
  iVar18 = *(int *)(pcVar3 + 0xb7814);
  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));
  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));
  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);
  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))
            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));
  (**(code **)(pcVar3 + 0xb7634))(iVar23);
  return (code *******)0x0;
}


lui gp,0xc
addiu gp,gp,0x105c
addu gp,gp,t9
addiu sp,sp,-0x80
sw ra,0x7c(sp)
sw s8,0x78(sp)
sw s7,0x74(sp)
sw s6,0x70(sp)
sw s5,0x6c(sp)
sw s4,0x68(sp)
sw s3,0x64(sp)
sw s2,0x60(sp)
sw s1,0x5c(sp)
sw s0,0x58(sp)
sw gp,0x18(sp)
or s0,a0,zero
or s4,a1,zero
lw v0,-0x7a54(gp)
lw v0,0x0(v0)
sw v0,0x54(sp)
lw v0,0x14(a0)
lw a0,0xc(v0)
lw t9,-0x7d74(gp)
jalr t9
_nop
lw gp,0x18(sp)
lw a0,0x18(s0)
lw t9,-0x7d50(gp)
addiu t9,t9,0x40f0
jalr t9
_nop
lw gp,0x18(sp)
lw v0,0x0(s0)
beq v0,zero,0x000d7324
_lw t9,-0x7d74(gp)
lw a0,0xc(v0)
jalr t9
_nop
lw gp,0x18(sp)
lw s1,0x1c(s0)
bne s1,zero,0x000d7330
_addiu v0,s1,-0x5
lw a0,0x18(s0)
lw v0,0x4(a0)
lw v1,0x0(v0)
sw v1,0x20(sp)
lw v1,0x4(s0)
lw v1,0x4(v1)
lw v1,0x0(v1)
sw v1,0x34(sp)
lw v1,0x0(s0)
beq v1,zero,0x000d69a8
_nop
lbu v1,0x14(v0)
li v0,0x2
beq v1,v0,0x000d72e0
_nop
lbu v0,0x8(a0)
beq v0,zero,0x000d6a14
_or a2,zero,zero
lw v0,0xc(s0)
beq v0,zero,0x000d6aa4
_sw v0,0x30(sp)
sw zero,0x30(sp)
lw v0,0xc(s0)
beq v0,zero,0x000d6ae8
_addiu a2,s0,0x8
lw v0,0x18(s0)
lw v0,0x4(v0)
lw v1,0x20(v0)
sw v1,0x24(sp)
lw v1,0x4(s0)
lw v1,0x4(v1)
lw a0,0x20(v1)
sw a0,0x40(sp)
lw v1,0x0(v1)
lbu v1,0x5(v1)
or a0,v1,zero
sw v1,0x38(sp)
li v1,0x5
beq a0,v1,0x000d6b18
_lw v1,0x40(sp)
b 0x000d6a70
_or s1,zero,zero
or a1,zero,zero
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x4c08
bal 0x000cb3f8
_nop
lw gp,0x18(sp)
or s1,v0,zero
lw v0,0xc(s0)
bne v0,zero,0x000d72cc
_li v0,0x1
beq s1,zero,0x000d6aa4
_sw v0,0x30(sp)
lw v0,0x18(s0)
lw v0,0x4(v0)
lw v1,0x20(v0)
sw v1,0x24(sp)
lw v1,0x4(s0)
lw v1,0x4(v1)
lw a0,0x20(v1)
sw a0,0x40(sp)
lw v1,0x0(v1)
lbu v1,0x5(v1)
sw v1,0x38(sp)
lw s5,0x2c(v0)
or s3,zero,zero
lw s6,-0x7fd8(gp)
addiu s8,sp,0x48
lw s7,-0x7dc8(gp)
addiu s7,s7,0x491c
lw v0,-0x7d58(gp)
addiu v0,v0,0x6de8
sw v0,0x28(sp)
lw v0,-0x7dc8(gp)
addiu v0,v0,0x49ec
b 0x000d6b78
_sw v0,0x2c(sp)
lw v0,0x18(s0)
lw v0,0x4(v0)
or a3,zero,zero
li a2,-0x1
lw a1,0x20(v0)
lw a0,0x4(s0)
lw t9,-0x7d1c(gp)
addiu t9,t9,0xc6c
jalr t9
_nop
lw gp,0x18(sp)
or s1,v0,zero
li v0,0x7
bne s1,v0,0x000d69c4
_nop
b 0x000d6a48
_lw v0,0x18(s0)
li a1,0x2
lw a0,0x4(s0)
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x4c08
bal 0x000cb3f8
_nop
lw gp,0x18(sp)
bne v0,zero,0x000d6a44
_or s1,v0,zero
li v0,0x1
b 0x000d69d0
_sw v0,0xc(s0)
lw a0,0x24(sp)
xor s1,v1,a0
li v1,0x8
movz v1,zero,s1
b 0x000d6a70
_or s1,v1,zero
lw v0,0x48(sp)
lw a2,0x4(v0)
or a1,s2,zero
or a0,s0,zero
lw t9,0x28(sp)
jalr t9
_nop
lw gp,0x18(sp)
or s1,v0,zero
lw a0,0x48(sp)
lw t9,0x2c(sp)
jalr t9
_nop
lw gp,0x18(sp)
lw v0,0x10(s0)
addiu v0,v0,0x1
sw v0,0x10(s0)
addiu s3,s3,0x1
bltz s4,0x000d6b88
_slt v0,s3,s4
beq v0,zero,0x000d6bf4
_nop
lw s2,0x10(s0)
sltu v0,s5,s2
bne v0,zero,0x000d72ac
_nop
bne s1,zero,0x000d6c94
_li v0,0x65
lw v0,0x18(s0)
lw v1,0x4(v0)
lw v0,-0x1b80(s6)
lw v1,0x20(v1)
teq v1,zero
divu v0,v1
mflo v0
addiu v0,v0,0x1
beq v0,s2,0x000d6b68
_li a3,0x2
or a2,s8,zero
or a1,s2,zero
lw a0,0x20(sp)
or t9,s7,zero
jalr t9
_nop
lw gp,0x18(sp)
bne v0,zero,0x000d6b68
_or s1,v0,zero
b 0x000d6b30
_or a3,zero,zero
bne s1,zero,0x000d6c94
_li v0,0x65
sw s5,0x24(s0)
lw v0,0x10(s0)
subu v1,s5,v0
addiu v1,v1,0x1
sltu v0,s5,v0
bne v0,zero,0x000d6c9c
_sw v1,0x20(s0)
lw v0,0x28(s0)
beq v0,zero,0x000d6c70
_nop
lw v0,0x30(sp)
beq v0,zero,0x000d6e5c
_nop
or a1,zero,zero
lw a0,0x18(s0)
lw t9,-0x7d6c(gp)
addiu t9,t9,0x6488
bal 0x000d6488
_nop
lw gp,0x18(sp)
or a1,zero,zero
lw a0,0x18(s0)
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x5f48
bal 0x000ca0b8
_nop
lw gp,0x18(sp)
b 0x000d6e54
_li v0,0xc0a
lw v0,0x18(s0)
lw v0,0x4(v0)
lw v0,0x0(v0)
lw v1,0x58(v0)
sw v1,0x2c(s0)
sw s0,0x58(v0)
li v0,0x1
b 0x000d6c24
_sw v0,0x28(s0)
bne s1,v0,0x000d6e48
_lw v0,0x30(sp)
beq s5,zero,0x000d6de0
_lw t9,-0x7d50(gp)
lw a2,0x8(s0)
addiu a2,a2,0x1
li a1,0x1
lw a0,0x4(s0)
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x4090
bal 0x000cbf70
_nop
lw gp,0x18(sp)
bne v0,zero,0x000d6e44
_or s1,v0,zero
lw a0,0x0(s0)
beq a0,zero,0x000d6cec
_lw t9,-0x7d1c(gp)
addiu t9,t9,-0x824
jalr t9
_nop
lw gp,0x18(sp)
li v0,0x5
lw v1,0x38(sp)
beq v1,v0,0x000d6ef8
_li a1,0x2
lw v1,0x40(sp)
lw a0,0x24(sp)
slt v0,a0,v1
beq v0,zero,0x000d6f28
_lw v0,0x24(sp)
teq a0,zero
div v1,a0
mflo a0
addu v1,a0,s5
addiu v0,v1,-0x1
teq a0,zero
div v0,a0
mflo v0
mflo a0
lw v1,0x4(s0)
lw a1,0x4(v1)
lw v1,-0x7fd8(gp)
lw v1,-0x1b80(v1)
lw a1,0x20(a1)
teq a1,zero
divu v1,a1
mflo v1
addiu v1,v1,0x1
beq v1,v0,0x000d6f20
_nop
lw v1,0x24(sp)
or s6,v1,zero
sra s4,v1,0x1f
sra v0,s5,0x1f
mult s4,s5
madd v0,v1
mflo v0
multu s5,v1
mflo a3
mfhi a2
sw a3,0x3c(sp)
addu v0,v0,a2
sw v0,0x38(sp)
lw v0,0x34(sp)
lw v1,0x3c(v0)
sw v1,0x28(sp)
lw s5,0x18(v0)
or s2,a0,zero
sltu a0,s5,a0
bne a0,zero,0x000d71f8
_lw s7,-0x7fd8(gp)
addiu s3,sp,0x48
lw v0,-0x7dc8(gp)
addiu v0,v0,0x491c
or s8,v0,zero
lw v0,-0x7d58(gp)
addiu v0,v0,0x6d30
sw v0,0x2c(sp)
lw v0,-0x7dc8(gp)
addiu v0,v0,0x49ec
b 0x000d6fe0
_sw v0,0x44(sp)
lw s2,0x4(s0)
or a0,s2,zero
addiu t9,t9,0x40f0
jalr t9
_nop
lw gp,0x18(sp)
lw v0,0x4(s2)
sw zero,0x2c(v0)
lw a0,0x4(s2)
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x4d90
bal 0x000cb270
_nop
lw gp,0x18(sp)
or s1,v0,zero
or a0,s2,zero
lw t9,-0x7dc8(gp)
addiu t9,t9,0x524c
jalr t9
_nop
lw gp,0x18(sp)
beq s1,zero,0x000d6ef0
_li v0,0x65
beq s1,v0,0x000d6ca4
_li s5,0x1
lw v0,0x30(sp)
bne v0,zero,0x000d6c34
_or a1,zero,zero
li v0,0xc0a
beq s1,v0,0x000d71f0
_nop
sw s1,0x1c(s0)
lw v0,0x0(s0)
beq v0,zero,0x000d6e7c
_lw t9,-0x7d78(gp)
lw a0,0xc(v0)
jalr t9
_nop
lw gp,0x18(sp)
lw a0,0x18(s0)
lw t9,-0x7dc8(gp)
addiu t9,t9,0x524c
jalr t9
_nop
lw gp,0x18(sp)
lw v0,0x14(s0)
lw a0,0xc(v0)
lw t9,-0x7d78(gp)
jalr t9
_nop
lw gp,0x18(sp)
or v0,s1,zero
lw a0,0x54(sp)
lw v1,-0x7a54(gp)
lw v1,0x0(v1)
bne a0,v1,0x000d7344
_lw ra,0x7c(sp)
lw s8,0x78(sp)
lw s7,0x74(sp)
lw s6,0x70(sp)
lw s5,0x6c(sp)
lw s4,0x68(sp)
lw s3,0x64(sp)
lw s2,0x60(sp)
lw s1,0x5c(sp)
lw s0,0x58(sp)
jr ra
_addiu sp,sp,0x80
b 0x000d6ca4
_li s5,0x1
lw a0,0x4(s0)
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x3f9c
bal 0x000cc064
_nop
lw gp,0x18(sp)
beq v0,zero,0x000d6cfc
_or s1,v0,zero
b 0x000d6e48
_lw v0,0x30(sp)
b 0x000d6d60
_addiu a0,v0,-0x1
lw v1,0x40(sp)
teq v1,zero
div v0,v1
mflo v0
mul s5,v0,s5
lw v0,0x34(sp)
sw s5,0x18(v0)
or a2,zero,zero
or a1,zero,zero
or a0,v0,zero
lw t9,-0x7d6c(gp)
addiu t9,t9,0x5e38
bal 0x000d5e38
_nop
lw gp,0x18(sp)
or s1,v0,zero
bne s1,zero,0x000d6e48
_lw v0,0x30(sp)
or a1,zero,zero
lw a0,0x4(s0)
lw t9,-0x7d6c(gp)
addiu t9,t9,-0x5f48
bal 0x000ca0b8
_nop
lw gp,0x18(sp)
bne v0,zero,0x000d6e44
_or s1,v0,zero
lw v0,0x30(sp)
bne v0,zero,0x000d71e8
_nop
b 0x000d6e5c
_li s1,0x65
or a2,s3,zero
or a1,s2,zero
lw a0,0x34(sp)
or t9,s8,zero
jalr t9
_nop
lw gp,0x18(sp)
beq v0,zero,0x000d7010
_or s1,v0,zero
bne s1,zero,0x000d6e44
_addiu s2,s2,0x1
sltu v0,s5,s2
bne v0,zero,0x000d71fc
_li a2,0x1
lw v0,0x4(s0)
lw v1,0x4(v0)
lw v0,-0x1b80(s7)
lw v1,0x20(v1)
teq v1,zero
divu v0,v1
mflo v0
addiu v0,v0,0x1
bne v0,s2,0x000d6fa8
_or a3,zero,zero
b 0x000d6fd4
_addiu s2,s2,0x1
lw a0,0x48(sp)
lw t9,0x2c(sp)
jalr t9
_nop
lw gp,0x18(sp)
or s1,v0,zero
lw a0,0x48(sp)
lw t9,0x44(sp)
jalr t9
_nop
lw gp,0x18(sp)
b 0x000d6fcc
_nop
bne s5,s2,0x000d7148
_lw v0,0x40(sp)
sltu v0,s3,v0
bne v0,zero,0x000d728c
_addiu a1,sp,0x48
b 0x000d7150
_lw a0,0x28(sp)
lw v0,0x48(sp)
lw a1,0x4(v0)
sw s2,0x10(sp)
sw s3,0x14(sp)
lw a2,0x24(sp)
lw a0,0x28(sp)
lw t9,0x2c(sp)
jalr t9
_nop
lw gp,0x18(sp)
or s1,v0,zero
lw a0,0x48(sp)
or t9,s8,zero
jalr t9
_nop
lw gp,0x18(sp)
addu v1,s3,s6
sltu s3,v1,s3
addu s2,s2,s4
addu v0,s3,s2
or s2,v0,zero
bne s1,zero,0x000d6e44
_or s3,v1,zero
slt v0,v0,s5
beq v0,zero,0x000d7134
_nop
sw zero,0x48(sp)
lw t9,-0x7f10(gp)
or a2,s4,zero
or a3,s6,zero
or a0,s2,zero
or a1,s3,zero
jalr t9
_nop
lw gp,0x18(sp)
or a3,zero,zero
addiu a2,sp,0x48
addiu a1,v1,0x1
lw a0,0x20(sp)
or t9,s7,zero
jalr t9
_nop
lw gp,0x18(sp)
beq v0,zero,0x000d7060
_or s1,v0,zero
lw a0,0x48(sp)
lw t9,-0x7dc8(gp)
addiu t9,t9,0x49ec
jalr t9
_nop
lw gp,0x18(sp)
b 0x000d6e48
_lw v0,0x30(sp)
bne s5,s2,0x000d7148
_lw v0,0x40(sp)
sltu v1,v1,v0
bne v1,zero,0x000d70c8
_nop
addiu a1,sp,0x48
lw a0,0x28(sp)
lw t9,-0x7dc8(gp)
addiu t9,t9,0xa6c
jalr t9
_nop
lw gp,0x18(sp)
bne v0,zero,0x000d6e44
_or s1,v0,zero
lw v0,0x48(sp)
lw a0,0x38(sp)
slt v0,a0,v0
bne v0,zero,0x000d719c
_lw v0,0x48(sp)
bne v0,a0,0x000d71c8
_or a1,zero,zero
lw v0,0x4c(sp)
lw v1,0x3c(sp)
sltu v0,v1,v0
beq v0,zero,0x000d71cc
_lw a0,0x34(sp)
lw a3,0x3c(sp)
lw a2,0x38(sp)
lw a0,0x28(sp)
lw t9,-0x7dc8(gp)
addiu t9,t9,0xa14
jalr t9
_nop
lw gp,0x18(sp)
bne v0,zero,0x000d6e44
_or s1,v0,zero
or a1,zero,zero
lw a0,0x34(sp)
lw t9,-0x7dc8(gp)
addiu t9,t9,0x4a30
jalr t9
_nop
lw gp,0x18(sp)
b 0x000d6f68
_or s1,v0,zero
b 0x000d6c30
_li s1,0x65
b 0x000d6e5c
_li s1,0x7
li a2,0x1
or a1,zero,zero
lw a0,0x34(sp)
lw t9,-0x7d6c(gp)
addiu t9,t9,0x5e38
bal 0x000d5e38
_nop
lw gp,0x18(sp)
or s1,v0,zero
lw v0,-0x7fd8(gp)
lw s3,-0x1b80(v0)
lw v0,0x40(sp)
addu v1,s3,v0
sra v0,v1,0x1f
or s5,v0,zero
sw v1,0x40(sp)
lw a0,0x38(sp)
slt v0,a0,v0
bne v0,zero,0x000d7260
_nop
bne s5,a0,0x000d7274
_lw v0,0x24(sp)
lw v0,0x3c(sp)
sltu v1,v0,v1
beq v1,zero,0x000d7274
_lw v0,0x24(sp)
lw v1,0x3c(sp)
lw v0,0x38(sp)
or s5,v0,zero
sw v1,0x40(sp)
lw v0,0x24(sp)
addu s3,s3,v0
bne s1,zero,0x000d6e44
_sra s2,s3,0x1f
slt v0,s2,s5
beq v0,zero,0x000d7044
_nop
lw s7,-0x7dc8(gp)
addiu s7,s7,0x491c
lw v0,-0x7dc8(gp)
addiu v0,v0,0x9e0
sw v0,0x2c(sp)
lw v0,-0x7dc8(gp)
b 0x000d70c8
_addiu s8,v0,0x49ec
bne s1,zero,0x000d6c94
_li v0,0x65
sw s5,0x24(s0)
lw v0,0x10(s0)
subu v0,s5,v0
addiu v0,v0,0x1
b 0x000d6c9c
_sw v0,0x20(s0)
sw v0,0x30(sp)
bne s1,zero,0x000d6a44
_nop
b 0x000d69d4
_lw v0,0x18(s0)
lw v0,0xc(s0)
bne v0,zero,0x000d72f4
_sw v0,0x30(sp)
b 0x000d6a44
_li s1,0x5
sw zero,0x30(sp)
b 0x000d72d0
_li s1,0x5
lw a0,0x18(s0)
lw v0,0x4(a0)
lw v0,0x0(v0)
sw v0,0x20(sp)
lw v0,0x4(s0)
lw v0,0x4(v0)
lw v0,0x0(v0)
b 0x000d69a8
_sw v0,0x34(sp)
lw s1,0x1c(s0)
beq s1,zero,0x000d7300
_addiu v0,s1,-0x5
sltiu v0,v0,0x2
beq v0,zero,0x000d6e60
_nop
b 0x000d6970
_lw a0,0x18(s0)
lw t9,-0x7a80(gp)
jalr t9
_nop
(translation_unit "code *******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)\n\n{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}\n\n" (function_definition "code *******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)\n\n{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}" type_identifier (pointer_declarator "*******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "*****\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "****\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "***\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "**\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "*\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (function_declarator "sqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" identifier (parameter_list "(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" ( (parameter_declaration "code *******param_1" type_identifier (pointer_declarator "*******param_1" * (pointer_declarator "******param_1" * (pointer_declarator "*****param_1" * (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier)))))))) , (parameter_declaration "code *******param_2" type_identifier (pointer_declarator "*******param_2" * (pointer_declarator "******param_2" * (pointer_declarator "*****param_2" * (pointer_declarator "****param_2" * (pointer_declarator "***param_2" * (pointer_declarator "**param_2" * (pointer_declarator "*param_2" * identifier)))))))) , (parameter_declaration "code *******param_3" type_identifier (pointer_declarator "*******param_3" * (pointer_declarator "******param_3" * (pointer_declarator "*****param_3" * (pointer_declarator "****param_3" * (pointer_declarator "***param_3" * (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier)))))))) , (parameter_declaration "code *******param_4" type_identifier (pointer_declarator "*******param_4" * (pointer_declarator "******param_4" * (pointer_declarator "*****param_4" * (pointer_declarator "****param_4" * (pointer_declarator "***param_4" * (pointer_declarator "**param_4" * (pointer_declarator "*param_4" * identifier)))))))) )))))))))) (compound_statement "{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "code *****pppppcVar2;" type_identifier (pointer_declarator "*****pppppcVar2" * (pointer_declarator "****pppppcVar2" * (pointer_declarator "***pppppcVar2" * (pointer_declarator "**pppppcVar2" * (pointer_declarator "*pppppcVar2" * identifier))))) ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "code ****ppppcVar5;" type_identifier (pointer_declarator "****ppppcVar5" * (pointer_declarator "***ppppcVar5" * (pointer_declarator "**ppppcVar5" * (pointer_declarator "*ppppcVar5" * identifier)))) ;) (declaration "code *******pppppppcVar6;" type_identifier (pointer_declarator "*******pppppppcVar6" * (pointer_declarator "******pppppppcVar6" * (pointer_declarator "*****pppppppcVar6" * (pointer_declarator "****pppppppcVar6" * (pointer_declarator "***pppppppcVar6" * (pointer_declarator "**pppppppcVar6" * (pointer_declarator "*pppppppcVar6" * identifier))))))) ;) (declaration "code *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined2 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "code ***pppcVar12;" type_identifier (pointer_declarator "***pppcVar12" * (pointer_declarator "**pppcVar12" * (pointer_declarator "*pppcVar12" * identifier))) ;) (declaration "int extraout_v1;" primitive_type identifier ;) (declaration "undefined2 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "code ******ppppppcVar15;" type_identifier (pointer_declarator "******ppppppcVar15" * (pointer_declarator "*****ppppppcVar15" * (pointer_declarator "****ppppppcVar15" * (pointer_declarator "***ppppppcVar15" * (pointer_declarator "**ppppppcVar15" * (pointer_declarator "*ppppppcVar15" * identifier)))))) ;) (declaration "code *******pppppppcVar16;" type_identifier (pointer_declarator "*******pppppppcVar16" * (pointer_declarator "******pppppppcVar16" * (pointer_declarator "*****pppppppcVar16" * (pointer_declarator "****pppppppcVar16" * (pointer_declarator "***pppppppcVar16" * (pointer_declarator "**pppppppcVar16" * (pointer_declarator "*pppppppcVar16" * identifier))))))) ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "code *******pppppppcVar21;" type_identifier (pointer_declarator "*******pppppppcVar21" * (pointer_declarator "******pppppppcVar21" * (pointer_declarator "*****pppppppcVar21" * (pointer_declarator "****pppppppcVar21" * (pointer_declarator "***pppppppcVar21" * (pointer_declarator "**pppppppcVar21" * (pointer_declarator "*pppppppcVar21" * identifier))))))) ;) (declaration "code *******unaff_s2;" type_identifier (pointer_declarator "*******unaff_s2" * (pointer_declarator "******unaff_s2" * (pointer_declarator "*****unaff_s2" * (pointer_declarator "****unaff_s2" * (pointer_declarator "***unaff_s2" * (pointer_declarator "**unaff_s2" * (pointer_declarator "*unaff_s2" * identifier))))))) ;) (declaration "code *******unaff_s3;" type_identifier (pointer_declarator "*******unaff_s3" * (pointer_declarator "******unaff_s3" * (pointer_declarator "*****unaff_s3" * (pointer_declarator "****unaff_s3" * (pointer_declarator "***unaff_s3" * (pointer_declarator "**unaff_s3" * (pointer_declarator "*unaff_s3" * identifier))))))) ;) (declaration "code *******unaff_s5;" type_identifier (pointer_declarator "*******unaff_s5" * (pointer_declarator "******unaff_s5" * (pointer_declarator "*****unaff_s5" * (pointer_declarator "****unaff_s5" * (pointer_declarator "***unaff_s5" * (pointer_declarator "**unaff_s5" * (pointer_declarator "*unaff_s5" * identifier))))))) ;) (declaration "code *******unaff_s6;" type_identifier (pointer_declarator "*******unaff_s6" * (pointer_declarator "******unaff_s6" * (pointer_declarator "*****unaff_s6" * (pointer_declarator "****unaff_s6" * (pointer_declarator "***unaff_s6" * (pointer_declarator "**unaff_s6" * (pointer_declarator "*unaff_s6" * identifier))))))) ;) (declaration "code *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "code *******unaff_s8;" type_identifier (pointer_declarator "*******unaff_s8" * (pointer_declarator "******unaff_s8" * (pointer_declarator "*****unaff_s8" * (pointer_declarator "****unaff_s8" * (pointer_declarator "***unaff_s8" * (pointer_declarator "**unaff_s8" * (pointer_declarator "*unaff_s8" * identifier))))))) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "code *******pppppppcVar24;" type_identifier (pointer_declarator "*******pppppppcVar24" * (pointer_declarator "******pppppppcVar24" * (pointer_declarator "*****pppppppcVar24" * (pointer_declarator "****pppppppcVar24" * (pointer_declarator "***pppppppcVar24" * (pointer_declarator "**pppppppcVar24" * (pointer_declarator "*pppppppcVar24" * identifier))))))) ;) (declaration "code *******pppppppcVar25;" type_identifier (pointer_declarator "*******pppppppcVar25" * (pointer_declarator "******pppppppcVar25" * (pointer_declarator "*****pppppppcVar25" * (pointer_declarator "****pppppppcVar25" * (pointer_declarator "***pppppppcVar25" * (pointer_declarator "**pppppppcVar25" * (pointer_declarator "*pppppppcVar25" * identifier))))))) ;) (declaration "int iStack_1d8;" primitive_type identifier ;) (declaration "int iStack_1d4;" primitive_type identifier ;) (declaration "code ******ppppppcStack_1cc;" type_identifier (pointer_declarator "******ppppppcStack_1cc" * (pointer_declarator "*****ppppppcStack_1cc" * (pointer_declarator "****ppppppcStack_1cc" * (pointer_declarator "***ppppppcStack_1cc" * (pointer_declarator "**ppppppcStack_1cc" * (pointer_declarator "*ppppppcStack_1cc" * identifier)))))) ;) (declaration "code ******ppppppcStack_1c8;" type_identifier (pointer_declarator "******ppppppcStack_1c8" * (pointer_declarator "*****ppppppcStack_1c8" * (pointer_declarator "****ppppppcStack_1c8" * (pointer_declarator "***ppppppcStack_1c8" * (pointer_declarator "**ppppppcStack_1c8" * (pointer_declarator "*ppppppcStack_1c8" * identifier)))))) ;) (declaration "code ******ppppppcStack_1c4;" type_identifier (pointer_declarator "******ppppppcStack_1c4" * (pointer_declarator "*****ppppppcStack_1c4" * (pointer_declarator "****ppppppcStack_1c4" * (pointer_declarator "***ppppppcStack_1c4" * (pointer_declarator "**ppppppcStack_1c4" * (pointer_declarator "*ppppppcStack_1c4" * identifier)))))) ;) (declaration "code ******ppppppcStack_1c0;" type_identifier (pointer_declarator "******ppppppcStack_1c0" * (pointer_declarator "*****ppppppcStack_1c0" * (pointer_declarator "****ppppppcStack_1c0" * (pointer_declarator "***ppppppcStack_1c0" * (pointer_declarator "**ppppppcStack_1c0" * (pointer_declarator "*ppppppcStack_1c0" * identifier)))))) ;) (declaration "code ******ppppppcStack_1bc;" type_identifier (pointer_declarator "******ppppppcStack_1bc" * (pointer_declarator "*****ppppppcStack_1bc" * (pointer_declarator "****ppppppcStack_1bc" * (pointer_declarator "***ppppppcStack_1bc" * (pointer_declarator "**ppppppcStack_1bc" * (pointer_declarator "*ppppppcStack_1bc" * identifier)))))) ;) (declaration "code ******ppppppcStack_1b8;" type_identifier (pointer_declarator "******ppppppcStack_1b8" * (pointer_declarator "*****ppppppcStack_1b8" * (pointer_declarator "****ppppppcStack_1b8" * (pointer_declarator "***ppppppcStack_1b8" * (pointer_declarator "**ppppppcStack_1b8" * (pointer_declarator "*ppppppcStack_1b8" * identifier)))))) ;) (declaration "code *pcStack_1b4;" type_identifier (pointer_declarator "*pcStack_1b4" * identifier) ;) (declaration "undefined8 uStack_1a0;" type_identifier identifier ;) (declaration "undefined *puStack_198;" type_identifier (pointer_declarator "*puStack_198" * identifier) ;) (declaration "code ******ppppppcStack_18c;" type_identifier (pointer_declarator "******ppppppcStack_18c" * (pointer_declarator "*****ppppppcStack_18c" * (pointer_declarator "****ppppppcStack_18c" * (pointer_declarator "***ppppppcStack_18c" * (pointer_declarator "**ppppppcStack_18c" * (pointer_declarator "*ppppppcStack_18c" * identifier)))))) ;) (declaration "code ******ppppppcStack_188;" type_identifier (pointer_declarator "******ppppppcStack_188" * (pointer_declarator "*****ppppppcStack_188" * (pointer_declarator "****ppppppcStack_188" * (pointer_declarator "***ppppppcStack_188" * (pointer_declarator "**ppppppcStack_188" * (pointer_declarator "*ppppppcStack_188" * identifier)))))) ;) (declaration "code ******ppppppcStack_184;" type_identifier (pointer_declarator "******ppppppcStack_184" * (pointer_declarator "*****ppppppcStack_184" * (pointer_declarator "****ppppppcStack_184" * (pointer_declarator "***ppppppcStack_184" * (pointer_declarator "**ppppppcStack_184" * (pointer_declarator "*ppppppcStack_184" * identifier)))))) ;) (declaration "code ******ppppppcStack_180;" type_identifier (pointer_declarator "******ppppppcStack_180" * (pointer_declarator "*****ppppppcStack_180" * (pointer_declarator "****ppppppcStack_180" * (pointer_declarator "***ppppppcStack_180" * (pointer_declarator "**ppppppcStack_180" * (pointer_declarator "*ppppppcStack_180" * identifier)))))) ;) (declaration "code ***pppcStack_17c;" type_identifier (pointer_declarator "***pppcStack_17c" * (pointer_declarator "**pppcStack_17c" * (pointer_declarator "*pppcStack_17c" * identifier))) ;) (declaration "code ******ppppppcStack_178;" type_identifier (pointer_declarator "******ppppppcStack_178" * (pointer_declarator "*****ppppppcStack_178" * (pointer_declarator "****ppppppcStack_178" * (pointer_declarator "***ppppppcStack_178" * (pointer_declarator "**ppppppcStack_178" * (pointer_declarator "*ppppppcStack_178" * identifier)))))) ;) (declaration "undefined4 uStack_174;" type_identifier identifier ;) (declaration "code ******ppppppcStack_170;" type_identifier (pointer_declarator "******ppppppcStack_170" * (pointer_declarator "*****ppppppcStack_170" * (pointer_declarator "****ppppppcStack_170" * (pointer_declarator "***ppppppcStack_170" * (pointer_declarator "**ppppppcStack_170" * (pointer_declarator "*ppppppcStack_170" * identifier)))))) ;) (declaration "code ******ppppppcStack_16c;" type_identifier (pointer_declarator "******ppppppcStack_16c" * (pointer_declarator "*****ppppppcStack_16c" * (pointer_declarator "****ppppppcStack_16c" * (pointer_declarator "***ppppppcStack_16c" * (pointer_declarator "**ppppppcStack_16c" * (pointer_declarator "*ppppppcStack_16c" * identifier)))))) ;) (declaration "code ******ppppppcStack_168;" type_identifier (pointer_declarator "******ppppppcStack_168" * (pointer_declarator "*****ppppppcStack_168" * (pointer_declarator "****ppppppcStack_168" * (pointer_declarator "***ppppppcStack_168" * (pointer_declarator "**ppppppcStack_168" * (pointer_declarator "*ppppppcStack_168" * identifier)))))) ;) (declaration "undefined4 *puStack_164;" type_identifier (pointer_declarator "*puStack_164" * identifier) ;) (declaration "uint uStack_160;" type_identifier identifier ;) (declaration "code ******ppppppcStack_15c;" type_identifier (pointer_declarator "******ppppppcStack_15c" * (pointer_declarator "*****ppppppcStack_15c" * (pointer_declarator "****ppppppcStack_15c" * (pointer_declarator "***ppppppcStack_15c" * (pointer_declarator "**ppppppcStack_15c" * (pointer_declarator "*ppppppcStack_15c" * identifier)))))) ;) (declaration "code ******ppppppcStack_158;" type_identifier (pointer_declarator "******ppppppcStack_158" * (pointer_declarator "*****ppppppcStack_158" * (pointer_declarator "****ppppppcStack_158" * (pointer_declarator "***ppppppcStack_158" * (pointer_declarator "**ppppppcStack_158" * (pointer_declarator "*ppppppcStack_158" * identifier)))))) ;) (declaration "int iStack_154;" primitive_type identifier ;) (declaration "undefined2 *puStack_150;" type_identifier (pointer_declarator "*puStack_150" * identifier) ;) (declaration "code *pcStack_14c;" type_identifier (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "code *****pppppcStack_148;" type_identifier (pointer_declarator "*****pppppcStack_148" * (pointer_declarator "****pppppcStack_148" * (pointer_declarator "***pppppcStack_148" * (pointer_declarator "**pppppcStack_148" * (pointer_declarator "*pppppcStack_148" * identifier))))) ;) (declaration "code *pcStack_144;" type_identifier (pointer_declarator "*pcStack_144" * identifier) ;) (declaration "code ******ppppppcStack_140;" type_identifier (pointer_declarator "******ppppppcStack_140" * (pointer_declarator "*****ppppppcStack_140" * (pointer_declarator "****ppppppcStack_140" * (pointer_declarator "***ppppppcStack_140" * (pointer_declarator "**ppppppcStack_140" * (pointer_declarator "*ppppppcStack_140" * identifier)))))) ;) (declaration "code ******ppppppcStack_13c;" type_identifier (pointer_declarator "******ppppppcStack_13c" * (pointer_declarator "*****ppppppcStack_13c" * (pointer_declarator "****ppppppcStack_13c" * (pointer_declarator "***ppppppcStack_13c" * (pointer_declarator "**ppppppcStack_13c" * (pointer_declarator "*ppppppcStack_13c" * identifier)))))) ;) (declaration "undefined4 *puStack_138;" type_identifier (pointer_declarator "*puStack_138" * identifier) ;) (declaration "code ******ppppppcStack_134;" type_identifier (pointer_declarator "******ppppppcStack_134" * (pointer_declarator "*****ppppppcStack_134" * (pointer_declarator "****ppppppcStack_134" * (pointer_declarator "***ppppppcStack_134" * (pointer_declarator "**ppppppcStack_134" * (pointer_declarator "*ppppppcStack_134" * identifier)))))) ;) (declaration "int iStack_130;" primitive_type identifier ;) (declaration "code *****pppppcStack_12c;" type_identifier (pointer_declarator "*****pppppcStack_12c" * (pointer_declarator "****pppppcStack_12c" * (pointer_declarator "***pppppcStack_12c" * (pointer_declarator "**pppppcStack_12c" * (pointer_declarator "*pppppcStack_12c" * identifier))))) ;) (declaration "undefined8 uStack_128;" type_identifier identifier ;) (declaration "code *****pppppcStack_120;" type_identifier (pointer_declarator "*****pppppcStack_120" * (pointer_declarator "****pppppcStack_120" * (pointer_declarator "***pppppcStack_120" * (pointer_declarator "**pppppcStack_120" * (pointer_declarator "*pppppcStack_120" * identifier))))) ;) (declaration "code ******ppppppcStack_11c;" type_identifier (pointer_declarator "******ppppppcStack_11c" * (pointer_declarator "*****ppppppcStack_11c" * (pointer_declarator "****ppppppcStack_11c" * (pointer_declarator "***ppppppcStack_11c" * (pointer_declarator "**ppppppcStack_11c" * (pointer_declarator "*ppppppcStack_11c" * identifier)))))) ;) (declaration "int iStack_118;" primitive_type identifier ;) (declaration "code *****apppppcStack_114 [27];" type_identifier (pointer_declarator "*****apppppcStack_114 [27]" * (pointer_declarator "****apppppcStack_114 [27]" * (pointer_declarator "***apppppcStack_114 [27]" * (pointer_declarator "**apppppcStack_114 [27]" * (pointer_declarator "*apppppcStack_114 [27]" * (array_declarator "apppppcStack_114 [27]" identifier [ number_literal ])))))) ;) (declaration "code ******ppppppcStack_a8;" type_identifier (pointer_declarator "******ppppppcStack_a8" * (pointer_declarator "*****ppppppcStack_a8" * (pointer_declarator "****ppppppcStack_a8" * (pointer_declarator "***ppppppcStack_a8" * (pointer_declarator "**ppppppcStack_a8" * (pointer_declarator "*ppppppcStack_a8" * identifier)))))) ;) (declaration "code ******ppppppcStack_a4;" type_identifier (pointer_declarator "******ppppppcStack_a4" * (pointer_declarator "*****ppppppcStack_a4" * (pointer_declarator "****ppppppcStack_a4" * (pointer_declarator "***ppppppcStack_a4" * (pointer_declarator "**ppppppcStack_a4" * (pointer_declarator "*ppppppcStack_a4" * identifier)))))) ;) (declaration "code ******ppppppcStack_a0;" type_identifier (pointer_declarator "******ppppppcStack_a0" * (pointer_declarator "*****ppppppcStack_a0" * (pointer_declarator "****ppppppcStack_a0" * (pointer_declarator "***ppppppcStack_a0" * (pointer_declarator "**ppppppcStack_a0" * (pointer_declarator "*ppppppcStack_a0" * identifier)))))) ;) (declaration "code ******ppppppcStack_9c;" type_identifier (pointer_declarator "******ppppppcStack_9c" * (pointer_declarator "*****ppppppcStack_9c" * (pointer_declarator "****ppppppcStack_9c" * (pointer_declarator "***ppppppcStack_9c" * (pointer_declarator "**ppppppcStack_9c" * (pointer_declarator "*ppppppcStack_9c" * identifier)))))) ;) (declaration "code ******ppppppcStack_98;" type_identifier (pointer_declarator "******ppppppcStack_98" * (pointer_declarator "*****ppppppcStack_98" * (pointer_declarator "****ppppppcStack_98" * (pointer_declarator "***ppppppcStack_98" * (pointer_declarator "**ppppppcStack_98" * (pointer_declarator "*ppppppcStack_98" * identifier)))))) ;) (declaration "code ******ppppppcStack_94;" type_identifier (pointer_declarator "******ppppppcStack_94" * (pointer_declarator "*****ppppppcStack_94" * (pointer_declarator "****ppppppcStack_94" * (pointer_declarator "***ppppppcStack_94" * (pointer_declarator "**ppppppcStack_94" * (pointer_declarator "*ppppppcStack_94" * identifier)))))) ;) (declaration "code ******ppppppcStack_90;" type_identifier (pointer_declarator "******ppppppcStack_90" * (pointer_declarator "*****ppppppcStack_90" * (pointer_declarator "****ppppppcStack_90" * (pointer_declarator "***ppppppcStack_90" * (pointer_declarator "**ppppppcStack_90" * (pointer_declarator "*ppppppcStack_90" * identifier)))))) ;) (declaration "code *pcStack_8c;" type_identifier (pointer_declarator "*pcStack_8c" * identifier) ;) (declaration "code ******ppppppcStack_88;" type_identifier (pointer_declarator "******ppppppcStack_88" * (pointer_declarator "*****ppppppcStack_88" * (pointer_declarator "****ppppppcStack_88" * (pointer_declarator "***ppppppcStack_88" * (pointer_declarator "**ppppppcStack_88" * (pointer_declarator "*ppppppcStack_88" * identifier)))))) ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "code ******ppppppcStack_78;" type_identifier (pointer_declarator "******ppppppcStack_78" * (pointer_declarator "*****ppppppcStack_78" * (pointer_declarator "****ppppppcStack_78" * (pointer_declarator "***ppppppcStack_78" * (pointer_declarator "**ppppppcStack_78" * (pointer_declarator "*ppppppcStack_78" * identifier)))))) ;) (declaration "code ******local_70;" type_identifier (pointer_declarator "******local_70" * (pointer_declarator "*****local_70" * (pointer_declarator "****local_70" * (pointer_declarator "***local_70" * (pointer_declarator "**local_70" * (pointer_declarator "*local_70" * identifier)))))) ;) (declaration "code ******local_6c;" type_identifier (pointer_declarator "******local_6c" * (pointer_declarator "*****local_6c" * (pointer_declarator "****local_6c" * (pointer_declarator "***local_6c" * (pointer_declarator "**local_6c" * (pointer_declarator "*local_6c" * identifier)))))) ;) (declaration "undefined4 uStack_64;" type_identifier identifier ;) (declaration "code ***local_60;" type_identifier (pointer_declarator "***local_60" * (pointer_declarator "**local_60" * (pointer_declarator "*local_60" * identifier))) ;) (declaration "code ******local_5c;" type_identifier (pointer_declarator "******local_5c" * (pointer_declarator "*****local_5c" * (pointer_declarator "****local_5c" * (pointer_declarator "***local_5c" * (pointer_declarator "**local_5c" * (pointer_declarator "*local_5c" * identifier)))))) ;) (declaration "code *****local_50;" type_identifier (pointer_declarator "*****local_50" * (pointer_declarator "****local_50" * (pointer_declarator "***local_50" * (pointer_declarator "**local_50" * (pointer_declarator "*local_50" * identifier))))) ;) (declaration "code ***local_4c;" type_identifier (pointer_declarator "***local_4c" * (pointer_declarator "**local_4c" * (pointer_declarator "*local_4c" * identifier))) ;) (declaration "code ******local_40;" type_identifier (pointer_declarator "******local_40" * (pointer_declarator "*****local_40" * (pointer_declarator "****local_40" * (pointer_declarator "***local_40" * (pointer_declarator "**local_40" * (pointer_declarator "*local_40" * identifier)))))) ;) (declaration "code ******local_38;" type_identifier (pointer_declarator "******local_38" * (pointer_declarator "*****local_38" * (pointer_declarator "****local_38" * (pointer_declarator "***local_38" * (pointer_declarator "**local_38" * (pointer_declarator "*local_38" * identifier)))))) ;) (declaration "code ******local_34;" type_identifier (pointer_declarator "******local_34" * (pointer_declarator "*****local_34" * (pointer_declarator "****local_34" * (pointer_declarator "***local_34" * (pointer_declarator "**local_34" * (pointer_declarator "*local_34" * identifier)))))) ;) (declaration "uint local_2c;" type_identifier identifier ;) (expression_statement "local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;" (assignment_expression "local_2c = *(uint *)PTR___stack_chk_guard_0018fecc" identifier = (pointer_expression "*(uint *)PTR___stack_chk_guard_0018fecc" * (cast_expression "(uint *)PTR___stack_chk_guard_0018fecc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pppppppcVar24 = param_2;" (assignment_expression "pppppppcVar24 = param_2" identifier = identifier) ;) (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" * (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1[5][3])" ( (subscript_expression "param_1[5][3]" (subscript_expression "param_1[5]" identifier [ number_literal ]) [ number_literal ]) ))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" ( (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" * (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" ( (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" identifier + number_literal) )))) )) (argument_list "(param_1[6])" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) (if_statement "if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" if (parenthesized_expression "(*param_1 == (code ******)0x0)" ( (binary_expression "*param_1 == (code ******)0x0" (pointer_expression "*param_1" * identifier) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }" { (expression_statement "pppppppcVar21 = (code *******)param_1[7];" (assignment_expression "pppppppcVar21 = (code *******)param_1[7]" identifier = (cast_expression "(code *******)param_1[7]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[7]" identifier [ number_literal ]))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d7330;" goto statement_identifier ;)) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "local_60 = (code ***)*ppppppcVar15[1];" (assignment_expression "local_60 = (code ***)*ppppppcVar15[1]" identifier = (cast_expression "(code ***)*ppppppcVar15[1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*ppppppcVar15[1]" * (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])))) ;) (expression_statement "local_4c = (code ***)*param_1[1][1];" (assignment_expression "local_4c = (code ***)*param_1[1][1]" identifier = (cast_expression "(code ***)*param_1[1][1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ])))) ;) (labeled_statement "LAB_000d69a8:\n    param_3 = (code *******)0x0;" statement_identifier : (expression_statement "param_3 = (code *******)0x0;" (assignment_expression "param_3 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (if_statement "if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" if (parenthesized_expression "(*(char *)(ppppppcVar15 + 2) == '\0')" ( (binary_expression "*(char *)(ppppppcVar15 + 2) == '\0'" (pointer_expression "*(char *)(ppppppcVar15 + 2)" * (cast_expression "(char *)(ppppppcVar15 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppppcVar15 + 2)" ( (binary_expression "ppppppcVar15 + 2" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }" { (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb3f8();" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb3f8()" identifier = (cast_expression "(code *******)FUN_000cb3f8()" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cb3f8()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" if (parenthesized_expression "(param_1[3] == (code ******)0x0)" ( (binary_expression "param_1[3] == (code ******)0x0" (subscript_expression "param_1[3]" identifier [ number_literal ]) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" { (expression_statement "local_50 = (code *****)0x1;" (assignment_expression "local_50 = (code *****)0x1" identifier = (cast_expression "(code *****)0x1" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;)) (goto_statement "goto LAB_000d6aa4;" goto statement_identifier ;) })) (expression_statement "local_50 = (code *****)0x1;" (assignment_expression "local_50 = (code *****)0x1" identifier = (cast_expression "(code *****)0x1" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (labeled_statement "LAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" statement_identifier : (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;))) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" else (compound_statement "{\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" { (expression_statement "local_50 = (code *****)param_1[3];" (assignment_expression "local_50 = (code *****)param_1[3]" identifier = (cast_expression "(code *****)param_1[3]" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (subscript_expression "param_1[3]" identifier [ number_literal ]))) ;) (if_statement "if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" if (parenthesized_expression "((code ******)local_50 == (code ******)0x0)" ( (binary_expression "(code ******)local_50 == (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" { (labeled_statement "LAB_000d6aa4:\n        param_4 = (code *******)0x0;" statement_identifier : (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (expression_statement "param_3 = (code *******)0xffffffff;" (assignment_expression "param_3 = (code *******)0xffffffff" identifier = (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)param_1[6][1][8];" (assignment_expression "pppppppcVar24 = (code *******)param_1[6][1][8]" identifier = (cast_expression "(code *******)param_1[6][1][8]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) ;) (expression_statement "iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);" (assignment_expression "iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1])" identifier = (call_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fc04 + 0xc6c)" * (cast_expression "(code *)(PTR_LAB_0018fc04 + 0xc6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fc04 + 0xc6c)" ( (binary_expression "PTR_LAB_0018fc04 + 0xc6c" identifier + number_literal) )))) )) (argument_list "(param_1[1])" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) )))) ;) (if_statement "if (iVar23 != 7) goto LAB_000d69c4;" if (parenthesized_expression "(iVar23 != 7)" ( (binary_expression "iVar23 != 7" identifier != number_literal) )) (goto_statement "goto LAB_000d69c4;" goto statement_identifier ;)) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (goto_statement "goto LAB_000d6a48;" goto statement_identifier ;) })) (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (labeled_statement "LAB_000d69c4:\n      param_3 = param_1 + 2;" statement_identifier : (expression_statement "param_3 = param_1 + 2;" (assignment_expression "param_3 = param_1 + 2" identifier = (binary_expression "param_1 + 2" identifier + number_literal)) ;)) (if_statement "if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }" if (parenthesized_expression "(param_1[3] == (code ******)0x0)" ( (binary_expression "param_1[3] == (code ******)0x0" (subscript_expression "param_1[3]" identifier [ number_literal ]) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }" { (expression_statement "pppppppcVar24 = (code *******)0x2;" (assignment_expression "pppppppcVar24 = (code *******)0x2" identifier = (cast_expression "(code *******)0x2" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1])" identifier = (cast_expression "(code *******)FUN_000cb3f8(param_1[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cb3f8(param_1[1])" identifier (argument_list "(param_1[1])" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;)) (expression_statement "param_1[3] = (code ******)0x1;" (assignment_expression "param_1[3] = (code ******)0x1" (subscript_expression "param_1[3]" identifier [ number_literal ]) = (cast_expression "(code ******)0x1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) })) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) }))) (expression_statement "pppppcVar2 = ppppppcVar15[1];" (assignment_expression "pppppcVar2 = ppppppcVar15[1]" identifier = (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])) ;) (expression_statement "local_5c = (code ******)pppppcVar2[8];" (assignment_expression "local_5c = (code ******)pppppcVar2[8]" identifier = (cast_expression "(code ******)pppppcVar2[8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "pppppcVar2[8]" identifier [ number_literal ]))) ;) (expression_statement "local_40 = (code ******)param_1[1][1][8];" (assignment_expression "local_40 = (code ******)param_1[1][1][8]" identifier = (cast_expression "(code ******)param_1[1][1][8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) ;) (expression_statement "cVar1 = *(char *)((int)*param_1[1][1] + 5);" (assignment_expression "cVar1 = *(char *)((int)*param_1[1][1] + 5)" identifier = (pointer_expression "*(char *)((int)*param_1[1][1] + 5)" * (cast_expression "(char *)((int)*param_1[1][1] + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*param_1[1][1] + 5)" ( (binary_expression "(int)*param_1[1][1] + 5" (cast_expression "(int)*param_1[1][1]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]))) + number_literal) ))))) ;) (if_statement "if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }" if (parenthesized_expression "(cVar1 == '\x05')" ( (binary_expression "cVar1 == '\x05'" identifier == (char_literal "'\x05'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }" { (expression_statement "pppppppcVar21 = (code *******)&DAT_00000008;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000008" identifier = (cast_expression "(code *******)&DAT_00000008" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (if_statement "if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }" if (parenthesized_expression "(local_40 == local_5c)" ( (binary_expression "local_40 == local_5c" identifier == identifier) )) (compound_statement "{\n        pppppppcVar21 = (code *******)0x0;\n      }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) })) }) (else_clause "else {\n      pppppppcVar21 = (code *******)0x0;\n    }" else (compound_statement "{\n      pppppppcVar21 = (code *******)0x0;\n    }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }))) (labeled_statement "LAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;" statement_identifier : (expression_statement "unaff_s6 = (code *******)PTR_DAT_0018f948;" (assignment_expression "unaff_s6 = (code *******)PTR_DAT_0018f948" identifier = (cast_expression "(code *******)PTR_DAT_0018f948" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;)) (expression_statement "unaff_s5 = (code *******)pppppcVar2[0xb];" (assignment_expression "unaff_s5 = (code *******)pppppcVar2[0xb]" identifier = (cast_expression "(code *******)pppppcVar2[0xb]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppcVar2[0xb]" identifier [ number_literal ]))) ;) (expression_statement "unaff_s8 = &local_38;" (assignment_expression "unaff_s8 = &local_38" identifier = (pointer_expression "&local_38" & identifier)) ;) (expression_statement "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);" (assignment_expression "pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8)" identifier = (cast_expression "(code *)(PTR_DAT_0018fbc8 + 0x6de8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018fbc8 + 0x6de8)" ( (binary_expression "PTR_DAT_0018fbc8 + 0x6de8" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (for_statement "for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }" for ( (assignment_expression "unaff_s3 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ; (parenthesized_expression "((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2))" ( (binary_expression "(int)param_2 < 0 || ((int)unaff_s3 < (int)param_2)" (binary_expression "(int)param_2 < 0" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) || (parenthesized_expression "((int)unaff_s3 < (int)param_2)" ( (binary_expression "(int)unaff_s3 < (int)param_2" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) ; (assignment_expression "unaff_s3 = (code *******)((int)unaff_s3 + 1)" identifier = (cast_expression "(code *******)((int)unaff_s3 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s3 + 1)" ( (binary_expression "(int)unaff_s3 + 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ) (compound_statement "{\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }" { (expression_statement "unaff_s2 = (code *******)param_1[4];" (assignment_expression "unaff_s2 = (code *******)param_1[4]" identifier = (cast_expression "(code *******)param_1[4]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[4]" identifier [ number_literal ]))) ;) (if_statement "if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" if (parenthesized_expression "(unaff_s5 < unaff_s2)" ( (binary_expression "unaff_s5 < unaff_s2" identifier < identifier) )) (compound_statement "{\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" { (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }" { (expression_statement "param_1[9] = (code ******)unaff_s5;" (assignment_expression "param_1[9] = (code ******)unaff_s5" (subscript_expression "param_1[9]" identifier [ number_literal ]) = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));" (assignment_expression "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (subscript_expression "param_1[8]" identifier [ number_literal ]) = (cast_expression "(code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)unaff_s5 + (1 - (int)param_1[4]))" ( (binary_expression "(int)unaff_s5 + (1 - (int)param_1[4])" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(1 - (int)param_1[4])" ( (binary_expression "1 - (int)param_1[4]" number_literal - (cast_expression "(int)param_1[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[4]" identifier [ number_literal ]))) ))) )))) ;) (goto_statement "goto LAB_000d6c9c;" goto statement_identifier ;) })) (goto_statement "goto LAB_000d6c94;" goto statement_identifier ;) })) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6c94;" goto statement_identifier ;)) (if_statement "if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }" if (parenthesized_expression "(param_1[6][1][8] == (code ****)0x0)" ( (binary_expression "param_1[6][1][8] == (code ****)0x0" (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]) == (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "param_4 = (code *******)0x2;" (assignment_expression "param_4 = (code *******)0x2" identifier = (cast_expression "(code *******)0x2" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }" if (parenthesized_expression "(((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0))" ( (binary_expression "((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)" (parenthesized_expression "((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2)" ( (binary_expression "(code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2" (cast_expression "(code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1)" ( (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1" (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8]" (pointer_expression "*(uint *)((int)unaff_s6 + -0x1b80)" * (cast_expression "(uint *)((int)unaff_s6 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s6 + -0x1b80)" ( (binary_expression "(int)unaff_s6 + -0x1b80" (cast_expression "(int)unaff_s6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) / (cast_expression "(uint)param_1[6][1][8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) + number_literal) ))) != identifier) )) && (parenthesized_expression "(pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)" ( (comma_expression "pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar24 = unaff_s2" identifier = identifier) , (comma_expression "param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "param_3 = unaff_s8" identifier = identifier) , (comma_expression "pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)(*unaff_s7)(local_60)" identifier = (cast_expression "(code *******)(*unaff_s7)(local_60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*unaff_s7)(local_60)" (parenthesized_expression "(*unaff_s7)" ( (pointer_expression "*unaff_s7" * identifier) )) (argument_list "(local_60)" ( identifier ))))) , (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))))) ))) )) (compound_statement "{\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }" { (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "param_3 = (code *******)local_38[1];" (assignment_expression "param_3 = (code *******)local_38[1]" identifier = (cast_expression "(code *******)local_38[1]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_38[1]" identifier [ number_literal ]))) ;) (expression_statement "pppppppcVar24 = unaff_s2;" (assignment_expression "pppppppcVar24 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppcVar21 = (code *******)(*pcVar3)(param_1);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar3)(param_1)" identifier = (cast_expression "(code *******)(*pcVar3)(param_1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar3)(param_1)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "(*pcVar4)(local_38);" (call_expression "(*pcVar4)(local_38)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(local_38)" ( identifier ))) ;) })) (expression_statement "param_1[4] = (code ******)((int)param_1[4] + 1);" (assignment_expression "param_1[4] = (code ******)((int)param_1[4] + 1)" (subscript_expression "param_1[4]" identifier [ number_literal ]) = (cast_expression "(code ******)((int)param_1[4] + 1)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)param_1[4] + 1)" ( (binary_expression "(int)param_1[4] + 1" (cast_expression "(int)param_1[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[4]" identifier [ number_literal ])) + number_literal) )))) ;) })) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" { (expression_statement "param_1[9] = (code ******)unaff_s5;" (assignment_expression "param_1[9] = (code ******)unaff_s5" (subscript_expression "param_1[9]" identifier [ number_literal ]) = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));" (assignment_expression "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (subscript_expression "param_1[8]" identifier [ number_literal ]) = (cast_expression "(code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)unaff_s5 + (1 - (int)param_1[4]))" ( (binary_expression "(int)unaff_s5 + (1 - (int)param_1[4])" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(1 - (int)param_1[4])" ( (binary_expression "1 - (int)param_1[4]" number_literal - (cast_expression "(int)param_1[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[4]" identifier [ number_literal ]))) ))) )))) ;) (if_statement "if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;" if (parenthesized_expression "(unaff_s5 < param_1[4])" ( (binary_expression "unaff_s5 < param_1[4]" identifier < (subscript_expression "param_1[4]" identifier [ number_literal ])) )) (goto_statement "goto LAB_000d6c9c;" goto statement_identifier ;)) (if_statement "if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }" if (parenthesized_expression "(param_1[10] == (code ******)0x0)" ( (binary_expression "param_1[10] == (code ******)0x0" (subscript_expression "param_1[10]" identifier [ number_literal ]) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }" { (expression_statement "ppppcVar5 = *param_1[6][1];" (assignment_expression "ppppcVar5 = *param_1[6][1]" identifier = (pointer_expression "*param_1[6][1]" * (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]))) ;) (expression_statement "param_1[0xb] = (code ******)ppppcVar5[0x16];" (assignment_expression "param_1[0xb] = (code ******)ppppcVar5[0x16]" (subscript_expression "param_1[0xb]" identifier [ number_literal ]) = (cast_expression "(code ******)ppppcVar5[0x16]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppcVar5[0x16]" identifier [ number_literal ]))) ;) (expression_statement "ppppcVar5[0x16] = (code ***)param_1;" (assignment_expression "ppppcVar5[0x16] = (code ***)param_1" (subscript_expression "ppppcVar5[0x16]" identifier [ number_literal ]) = (cast_expression "(code ***)param_1" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier)) ;) (expression_statement "param_1[10] = (code ******)0x1;" (assignment_expression "param_1[10] = (code ******)0x1" (subscript_expression "param_1[10]" identifier [ number_literal ]) = (cast_expression "(code ******)0x1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) })) (if_statement "if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;" if (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" ( (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6c34;" goto statement_identifier ;)) (goto_statement "goto LAB_000d6e5c;" goto statement_identifier ;) })) (labeled_statement "LAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" statement_identifier : (if_statement "if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x65)" ( (binary_expression "pppppppcVar21 == (code *******)0x65" identifier == (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }" { (labeled_statement "LAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" statement_identifier : (if_statement "if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" if (parenthesized_expression "(unaff_s5 == (code *******)0x0)" ( (binary_expression "unaff_s5 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" { (expression_statement "unaff_s2 = (code *******)param_1[1];" (assignment_expression "unaff_s2 = (code *******)param_1[1]" identifier = (cast_expression "(code *******)param_1[1]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[1]" identifier [ number_literal ]))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" ( (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" * (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" ( (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" identifier + number_literal) )))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "unaff_s2[1][0xb] = (code *****)0x0;" (assignment_expression "unaff_s2[1][0xb] = (code *****)0x0" (subscript_expression "unaff_s2[1][0xb]" (subscript_expression "unaff_s2[1]" identifier [ number_literal ]) [ number_literal ]) = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1])" identifier = (cast_expression "(code *******)FUN_000cb270(unaff_s2[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cb270(unaff_s2[1])" identifier (argument_list "(unaff_s2[1])" ( (subscript_expression "unaff_s2[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x524c" identifier + number_literal) )))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          unaff_s5 = (code *******)0x1;\n        }" { (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" else (compound_statement "{\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" { (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x65)" ( (binary_expression "pppppppcVar21 != (code *******)0x65" identifier != (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) }))) }))) (expression_statement "param_3 = (code *******)((int)param_1[2] + 1);" (assignment_expression "param_3 = (code *******)((int)param_1[2] + 1)" identifier = (cast_expression "(code *******)((int)param_1[2] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[2] + 1)" ( (binary_expression "(int)param_1[2] + 1" (cast_expression "(int)param_1[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[2]" identifier [ number_literal ])) + number_literal) )))) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1)" identifier = (cast_expression "(code *******)FUN_000cbf70(param_1[1],1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cbf70(param_1[1],1)" identifier (argument_list "(param_1[1],1)" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (if_statement "if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" if (parenthesized_expression "(*param_1 != (code ******)0x0)" ( (binary_expression "*param_1 != (code ******)0x0" (pointer_expression "*param_1" * identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" { (expression_statement "(*(code *)(PTR_LAB_0018fc04 + -0x824))();" (call_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))()" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))" ( (pointer_expression "*(code *)(PTR_LAB_0018fc04 + -0x824)" * (cast_expression "(code *)(PTR_LAB_0018fc04 + -0x824)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fc04 + -0x824)" ( (binary_expression "PTR_LAB_0018fc04 + -0x824" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;" if (parenthesized_expression "((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0))" ( (binary_expression "(cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)" (parenthesized_expression "(cVar1 == '\x05')" ( (binary_expression "cVar1 == '\x05'" identifier == (char_literal "'\x05'" ' escape_sequence ')) )) && (parenthesized_expression "(pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)" ( (comma_expression "pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2)" identifier = (cast_expression "(code *******)FUN_000cc064(param_1[1],2)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cc064(param_1[1],2)" identifier (argument_list "(param_1[1],2)" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) , number_literal ))))) , (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ))) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (expression_statement "pcVar3 = (code *)PTR_DAT_0018f948;" (assignment_expression "pcVar3 = (code *)PTR_DAT_0018f948" identifier = (cast_expression "(code *)PTR_DAT_0018f948" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" if (parenthesized_expression "((int)local_5c < (int)local_40)" ( (binary_expression "(int)local_5c < (int)local_40" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" { (if_statement "if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }" if (parenthesized_expression "((code *******)local_5c == (code *******)0x0)" ( (binary_expression "(code *******)local_5c == (code *******)0x0" (cast_expression "(code *******)local_5c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar23 = (int)local_40 / (int)local_5c;" (assignment_expression "iVar23 = (int)local_40 / (int)local_5c" identifier = (binary_expression "(int)local_40 / (int)local_5c" (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier) / (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar23 == 0) {\n          trap(7);\n        }" if (parenthesized_expression "(iVar23 == 0)" ( (binary_expression "iVar23 == 0" identifier == number_literal) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);" (assignment_expression "pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" identifier = (cast_expression "(code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" ( (binary_expression "(int)((int)unaff_s5 + iVar23 + -1) / iVar23" (cast_expression "(int)((int)unaff_s5 + iVar23 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)unaff_s5 + iVar23 + -1)" ( (binary_expression "(int)unaff_s5 + iVar23 + -1" (binary_expression "(int)unaff_s5 + iVar23" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))) / identifier) )))) ;) (if_statement "if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }" if (parenthesized_expression "(param_1[1][1][8] == (code ****)0x0)" ( (binary_expression "param_1[1][1][8] == (code ****)0x0" (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]) == (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (if_statement "if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }" if (parenthesized_expression "((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24)" ( (binary_expression "(code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24" (cast_expression "(code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (binary_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1" (binary_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8]" (pointer_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80)" * (cast_expression "(uint *)(PTR_DAT_0018f948 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" ( (binary_expression "PTR_DAT_0018f948 + -0x1b80" identifier + number_literal) )))) / (cast_expression "(uint)param_1[1][1][8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) + number_literal) ))) == identifier) )) (compound_statement "{\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }" { (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + -1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + -1)" ( (binary_expression "(int)pppppppcVar24 + -1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "param_2 = (code *******)((int)local_5c >> 0x1f);" (assignment_expression "param_2 = (code *******)((int)local_5c >> 0x1f)" identifier = (cast_expression "(code *******)((int)local_5c >> 0x1f)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_5c >> 0x1f)" ( (binary_expression "(int)local_5c >> 0x1f" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (expression_statement "pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));" (assignment_expression "pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c))" identifier = (cast_expression "(code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(local_5c))" ( (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c)" (call_expression "ZEXT48(unaff_s5)" identifier (argument_list "(unaff_s5)" ( identifier ))) * (call_expression "ZEXT48(local_5c)" identifier (argument_list "(local_5c)" ( identifier )))) )))) ;) (expression_statement "pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));" (assignment_expression "pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" identifier = (cast_expression "(code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" ( (binary_expression "(int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" (binary_expression "(int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c" (binary_expression "(int)param_2 * (int)unaff_s5" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) * (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) + (binary_expression "((int)unaff_s5 >> 0x1f) * (int)local_5c" (parenthesized_expression "((int)unaff_s5 >> 0x1f)" ( (binary_expression "(int)unaff_s5 >> 0x1f" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) * (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier))) + (cast_expression "(int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" ( (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20" (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c)" (call_expression "ZEXT48(unaff_s5)" identifier (argument_list "(unaff_s5)" ( identifier ))) * (call_expression "ZEXT48(local_5c)" identifier (argument_list "(local_5c)" ( identifier )))) >> number_literal) )))) )))) ;) (expression_statement "pppcVar12 = (code ***)local_4c[0xf];" (assignment_expression "pppcVar12 = (code ***)local_4c[0xf]" identifier = (cast_expression "(code ***)local_4c[0xf]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "local_4c[0xf]" identifier [ number_literal ]))) ;) (expression_statement "unaff_s5 = (code *******)local_4c[6];" (assignment_expression "unaff_s5 = (code *******)local_4c[6]" identifier = (cast_expression "(code *******)local_4c[6]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_4c[6]" identifier [ number_literal ]))) ;) (expression_statement "param_4 = pppppppcVar25;" (assignment_expression "param_4 = pppppppcVar25" identifier = identifier) ;) (expression_statement "unaff_s6 = (code *******)local_5c;" (assignment_expression "unaff_s6 = (code *******)local_5c" identifier = (cast_expression "(code *******)local_5c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }" if (parenthesized_expression "(pppppppcVar24 <= unaff_s5)" ( (binary_expression "pppppppcVar24 <= unaff_s5" identifier <= identifier) )) (compound_statement "{\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }" { (expression_statement "unaff_s3 = &local_38;" (assignment_expression "unaff_s3 = &local_38" identifier = (pointer_expression "&local_38" & identifier)) ;) (expression_statement "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *******)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);" (assignment_expression "pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30)" identifier = (cast_expression "(code *)(PTR_DAT_0018fbc8 + 0x6d30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018fbc8 + 0x6d30)" ( (binary_expression "PTR_DAT_0018fbc8 + 0x6d30" identifier + number_literal) )))) ;) (expression_statement "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (do_statement "do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);" do (compound_statement "{\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          }" { (if_statement "if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }" if (parenthesized_expression "(param_1[1][1][8] == (code ****)0x0)" ( (binary_expression "param_1[1][1][8] == (code ****)0x0" (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]) == (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              trap(7);\n            }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }" if (parenthesized_expression "((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24)" ( (binary_expression "(code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24" (cast_expression "(code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (binary_expression "*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1" (binary_expression "*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8]" (pointer_expression "*(uint *)(pcVar3 + -0x1b80)" * (cast_expression "(uint *)(pcVar3 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + -0x1b80)" ( (binary_expression "pcVar3 + -0x1b80" identifier + number_literal) )))) / (cast_expression "(uint)param_1[1][1][8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) + number_literal) ))) != identifier) )) (compound_statement "{\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }" { (expression_statement "param_3 = unaff_s3;" (assignment_expression "param_3 = unaff_s3" identifier = identifier) ;) (expression_statement "pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24)" identifier = (cast_expression "(code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)unaff_s8)(local_4c,pppppppcVar24)" (parenthesized_expression "(*(code *)unaff_s8)" ( (pointer_expression "*(code *)unaff_s8" * (cast_expression "(code *)unaff_s8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_4c,pppppppcVar24)" ( identifier , identifier ))))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }" { (expression_statement "pppppppcVar21 = (code *******)(*pcVar4)(local_38);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar4)(local_38)" identifier = (cast_expression "(code *******)(*pcVar4)(local_38)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar4)(local_38)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(local_38)" ( identifier ))))) ;) (expression_statement "(*pcVar7)(local_38);" (call_expression "(*pcVar7)(local_38)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(local_38)" ( identifier ))) ;) })) (expression_statement "unaff_s2 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "unaff_s2 = (code *******)((int)pppppppcVar24 + 1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + 1)" ( (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) })) (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + 1)" ( (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(pppppppcVar24 <= unaff_s5)" ( (binary_expression "pppppppcVar24 <= unaff_s5" identifier <= identifier) )) ;) })) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0)" identifier = (cast_expression "(code *******)FUN_000d5e38(local_4c,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000d5e38(local_4c,0)" identifier (argument_list "(local_4c,0)" ( identifier , number_literal ))))) ;) (expression_statement "local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));" (assignment_expression "local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" identifier = (cast_expression "(code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (binary_expression "(int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80)" (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier) + (pointer_expression "*(int *)(PTR_DAT_0018f948 + -0x1b80)" * (cast_expression "(int *)(PTR_DAT_0018f948 + -0x1b80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" ( (binary_expression "PTR_DAT_0018f948 + -0x1b80" identifier + number_literal) ))))) )))) ;) (expression_statement "unaff_s5 = (code *******)((int)local_40 >> 0x1f);" (assignment_expression "unaff_s5 = (code *******)((int)local_40 >> 0x1f)" identifier = (cast_expression "(code *******)((int)local_40 >> 0x1f)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_40 >> 0x1f)" ( (binary_expression "(int)local_40 >> 0x1f" (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (if_statement "if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }" if (parenthesized_expression "(((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40))))" ( (binary_expression "((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))" (parenthesized_expression "((int)pppppppcVar6 < (int)unaff_s5)" ( (binary_expression "(int)pppppppcVar6 < (int)unaff_s5" (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))" ( (parenthesized_expression "(unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40))" ( (binary_expression "unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)" (binary_expression "unaff_s5 == pppppppcVar6" identifier == identifier) && (parenthesized_expression "(pppppppcVar25 < local_40)" ( (binary_expression "pppppppcVar25 < local_40" identifier < identifier) ))) )) ))) )) (compound_statement "{\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }" { (expression_statement "unaff_s5 = pppppppcVar6;" (assignment_expression "unaff_s5 = pppppppcVar6" identifier = identifier) ;) (expression_statement "local_40 = (code ******)pppppppcVar25;" (assignment_expression "local_40 = (code ******)pppppppcVar25" identifier = (cast_expression "(code ******)pppppppcVar25" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) })) (expression_statement "unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));" (assignment_expression "unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" identifier = (cast_expression "(code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (binary_expression "(int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80)" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) + (pointer_expression "*(int *)(PTR_DAT_0018f948 + -0x1b80)" * (cast_expression "(int *)(PTR_DAT_0018f948 + -0x1b80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" ( (binary_expression "PTR_DAT_0018f948 + -0x1b80" identifier + number_literal) ))))) )))) ;) (expression_statement "unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);" (assignment_expression "unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f)" identifier = (cast_expression "(code *******)((int)unaff_s3 >> 0x1f)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s3 >> 0x1f)" ( (binary_expression "(int)unaff_s3 >> 0x1f" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" { (if_statement "if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }" if (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))" ( (binary_expression "((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" ( (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" ( (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < local_40))" ( (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < local_40)" (binary_expression "unaff_s5 == unaff_s2" identifier == identifier) && (parenthesized_expression "(unaff_s3 < local_40)" ( (binary_expression "unaff_s3 < local_40" identifier < identifier) ))) )) ))) )) (compound_statement "{\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }" { (expression_statement "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x9e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x9e0)" ( (binary_expression "PTR_LAB_0018fb58 + 0x9e0" identifier + number_literal) )))) ;) (expression_statement "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *******)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (expression_statement "pppppppcVar24 = unaff_s3;" (assignment_expression "pppppppcVar24 = unaff_s3" identifier = identifier) ;) (do_statement "do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));" do (compound_statement "{\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            }" { (expression_statement "local_38 = (code ******)0x0;" (assignment_expression "local_38 = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "(*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);" (call_expression "(*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c)" (parenthesized_expression "(*(code *)PTR_FUN_0018fa10)" ( (pointer_expression "*(code *)PTR_FUN_0018fa10" * (cast_expression "(code *)PTR_FUN_0018fa10" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,pppppppcVar24,param_2,local_5c)" ( identifier , identifier , identifier , identifier ))) ;) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "param_3 = &local_38;" (assignment_expression "param_3 = &local_38" identifier = (pointer_expression "&local_38" & identifier)) ;) (expression_statement "pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1)" identifier = (cast_expression "(code *******)(*pcVar3)(local_60,extraout_v1 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar3)(local_60,extraout_v1 + 1)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(local_60,extraout_v1 + 1)" ( identifier , (binary_expression "extraout_v1 + 1" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }" { (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x49ec)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) )) (argument_list "(local_38)" ( identifier ))) ;) (expression_statement "unaff_s3 = pppppppcVar24;" (assignment_expression "unaff_s3 = pppppppcVar24" identifier = identifier) ;) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;) })) (expression_statement "param_3 = (code *******)local_5c;" (assignment_expression "param_3 = (code *******)local_5c" identifier = (cast_expression "(code *******)local_5c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "local_70 = (code ******)unaff_s2;" (assignment_expression "local_70 = (code ******)unaff_s2" identifier = (cast_expression "(code ******)unaff_s2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "local_6c = (code ******)pppppppcVar24;" (assignment_expression "local_6c = (code ******)pppppppcVar24" identifier = (cast_expression "(code ******)pppppppcVar24" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1])" identifier = (cast_expression "(code *******)(*pcVar4)(pppcVar12,local_38[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar4)(pppcVar12,local_38[1])" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pppcVar12,local_38[1])" ( identifier , (subscript_expression "local_38[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "(*(code *)unaff_s8)(local_38);" (call_expression "(*(code *)unaff_s8)(local_38)" (parenthesized_expression "(*(code *)unaff_s8)" ( (pointer_expression "*(code *)unaff_s8" * (cast_expression "(code *)unaff_s8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_38)" ( identifier ))) ;) (expression_statement "unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);" (assignment_expression "unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + (int)local_5c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + (int)local_5c)" ( (binary_expression "(int)pppppppcVar24 + (int)local_5c" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));" (assignment_expression "unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" identifier = (cast_expression "(code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" ( (binary_expression "(code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24)" (cast_expression "(code *)((int)unaff_s2 + (int)param_2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s2 + (int)param_2)" ( (binary_expression "(int)unaff_s2 + (int)param_2" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier)) ))) + (parenthesized_expression "(unaff_s3 < pppppppcVar24)" ( (binary_expression "unaff_s3 < pppppppcVar24" identifier < identifier) ))) )))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (expression_statement "pppppppcVar24 = unaff_s3;" (assignment_expression "pppppppcVar24 = unaff_s3" identifier = identifier) ;) }) while (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))" ( (binary_expression "((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" ( (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" ( (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < local_40))" ( (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < local_40)" (binary_expression "unaff_s5 == unaff_s2" identifier == identifier) && (parenthesized_expression "(unaff_s3 < local_40)" ( (binary_expression "unaff_s3 < local_40" identifier < identifier) ))) )) ))) )) ;) })) (expression_statement "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" identifier = (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa6c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa6c)" ( (binary_expression "PTR_LAB_0018fb58 + 0xa6c" identifier + number_literal) )))) )) (argument_list "(pppcVar12,&local_38)" ( identifier , (pointer_expression "&local_38" & identifier) ))))) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }" if (parenthesized_expression "((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             )" ( (binary_expression "(pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))" (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))" ( (parenthesized_expression "(((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0))" ( (binary_expression "((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)" (parenthesized_expression "((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25))))" ( (binary_expression "(int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))" (binary_expression "(int)local_38 <= (int)pppppppcVar6" (cast_expression "(int)local_38" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier)) && (parenthesized_expression "(((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))" ( (parenthesized_expression "((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25))" ( (binary_expression "(code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)" (binary_expression "(code *******)local_38 != pppppppcVar6" (cast_expression "(code *******)local_38" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) != identifier) || (parenthesized_expression "(local_34 <= pppppppcVar25)" ( (binary_expression "local_34 <= pppppppcVar25" identifier <= identifier) ))) )) ))) )) || (parenthesized_expression "(pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)" ( (comma_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" identifier = (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa14)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa14)" ( (binary_expression "PTR_LAB_0018fb58 + 0xa14" identifier + number_literal) )))) )) (argument_list "(pppcVar12)" ( identifier ))))) , (comma_expression "param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "param_3 = pppppppcVar6" identifier = identifier) , (comma_expression "param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "param_4 = pppppppcVar25" identifier = identifier) , (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))))) ))) )) ))) )) (compound_statement "{\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }" { (expression_statement "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" identifier = (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x4a30)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x4a30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x4a30)" ( (binary_expression "PTR_LAB_0018fb58 + 0x4a30" identifier + number_literal) )))) )) (argument_list "(local_4c,0)" ( identifier , number_literal ))))) ;) (goto_statement "goto LAB_000d6f68;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;) })) (if_statement "if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }" if (parenthesized_expression "((code *******)local_40 == (code *******)0x0)" ( (binary_expression "(code *******)local_40 == (code *******)0x0" (cast_expression "(code *******)local_40" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);" (assignment_expression "unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5)" identifier = (cast_expression "(code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((int)local_5c / (int)local_40) * (int)unaff_s5)" ( (binary_expression "((int)local_5c / (int)local_40) * (int)unaff_s5" (parenthesized_expression "((int)local_5c / (int)local_40)" ( (binary_expression "(int)local_5c / (int)local_40" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) / (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier)) )) * (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_4c[6] = (code **)unaff_s5;" (assignment_expression "local_4c[6] = (code **)unaff_s5" (subscript_expression "local_4c[6]" identifier [ number_literal ]) = (cast_expression "(code **)unaff_s5" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "param_3 = (code *******)0x0;" (assignment_expression "param_3 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0)" identifier = (cast_expression "(code *******)FUN_000d5e38(local_4c,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000d5e38(local_4c,0)" identifier (argument_list "(local_4c,0)" ( identifier , number_literal ))))) ;) (labeled_statement "LAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" statement_identifier : (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;))) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1])" identifier = (cast_expression "(code *******)FUN_000ca0b8(param_1[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000ca0b8(param_1[1])" identifier (argument_list "(param_1[1])" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (if_statement "if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }" if (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" ( (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }" { (expression_statement "pppppppcVar21 = (code *******)0x65;" (assignment_expression "pppppppcVar21 = (code *******)0x65" identifier = (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d6c34;" goto statement_identifier ;) })) (expression_statement "pppppppcVar21 = (code *******)0x65;" (assignment_expression "pppppppcVar21 = (code *******)0x65" identifier = (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" else (compound_statement "{\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" { (labeled_statement "LAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;" statement_identifier : (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (if_statement "if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }" if (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" ( (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }" { (labeled_statement "LAB_000d6c34:\n        FUN_000d6488(param_1[6],0);" statement_identifier : (expression_statement "FUN_000d6488(param_1[6],0);" (call_expression "FUN_000d6488(param_1[6],0)" identifier (argument_list "(param_1[6],0)" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) , number_literal ))) ;)) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "FUN_000ca0b8(param_1[6]);" (call_expression "FUN_000ca0b8(param_1[6])" identifier (argument_list "(param_1[6])" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0xc0a)" ( (binary_expression "pppppppcVar21 == (code *******)0xc0a" identifier == (cast_expression "(code *******)0xc0a" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }" { (expression_statement "pppppppcVar21 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) })) })))) (labeled_statement "LAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;" statement_identifier : (expression_statement "param_1[7] = (code ******)pppppppcVar21;" (assignment_expression "param_1[7] = (code ******)pppppppcVar21" (subscript_expression "param_1[7]" identifier [ number_literal ]) = (cast_expression "(code ******)pppppppcVar21" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;)) }) (else_clause "else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" else (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" { (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" * (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((*param_1)[3])" ( (subscript_expression "(*param_1)[3]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]) ))) ;) (expression_statement "pppppppcVar21 = (code *******)param_1[7];" (assignment_expression "pppppppcVar21 = (code *******)param_1[7]" identifier = (cast_expression "(code *******)param_1[7]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[7]" identifier [ number_literal ]))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }" { (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (labeled_statement "LAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];" statement_identifier : (expression_statement "local_60 = (code ***)*ppppppcVar15[1];" (assignment_expression "local_60 = (code ***)*ppppppcVar15[1]" identifier = (cast_expression "(code ***)*ppppppcVar15[1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*ppppppcVar15[1]" * (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])))) ;)) (expression_statement "local_4c = (code ***)*param_1[1][1];" (assignment_expression "local_4c = (code ***)*param_1[1][1]" identifier = (cast_expression "(code ***)*param_1[1][1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ])))) ;) (if_statement "if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;" if (parenthesized_expression "((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))" ( (binary_expression "(*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02')" (parenthesized_expression "(*param_1 == (code ******)0x0)" ( (binary_expression "*param_1 == (code ******)0x0" (pointer_expression "*param_1" * identifier) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) || (parenthesized_expression "(*(char *)(ppppppcVar15[1] + 5) != '\x02')" ( (binary_expression "*(char *)(ppppppcVar15[1] + 5) != '\x02'" (pointer_expression "*(char *)(ppppppcVar15[1] + 5)" * (cast_expression "(char *)(ppppppcVar15[1] + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppppcVar15[1] + 5)" ( (binary_expression "ppppppcVar15[1] + 5" (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ]) + number_literal) )))) != (char_literal "'\x02'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000d69a8;" goto statement_identifier ;)) (if_statement "if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" if (parenthesized_expression "(param_1[3] != (code ******)0x0)" ( (binary_expression "param_1[3] != (code ******)0x0" (subscript_expression "param_1[3]" identifier [ number_literal ]) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" { (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) (goto_statement "goto LAB_000d72d0;" goto statement_identifier ;) })) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (labeled_statement "LAB_000d6a44:\n      ppppppcVar15 = param_1[6];" statement_identifier : (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;)) (labeled_statement "LAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];" statement_identifier : (expression_statement "pppppcVar2 = ppppppcVar15[1];" (assignment_expression "pppppcVar2 = ppppppcVar15[1]" identifier = (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])) ;)) (expression_statement "local_5c = (code ******)pppppcVar2[8];" (assignment_expression "local_5c = (code ******)pppppcVar2[8]" identifier = (cast_expression "(code ******)pppppcVar2[8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "pppppcVar2[8]" identifier [ number_literal ]))) ;) (expression_statement "local_40 = (code ******)param_1[1][1][8];" (assignment_expression "local_40 = (code ******)param_1[1][1][8]" identifier = (cast_expression "(code ******)param_1[1][1][8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) ;) (expression_statement "cVar1 = *(char *)((int)*param_1[1][1] + 5);" (assignment_expression "cVar1 = *(char *)((int)*param_1[1][1] + 5)" identifier = (pointer_expression "*(char *)((int)*param_1[1][1] + 5)" * (cast_expression "(char *)((int)*param_1[1][1] + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*param_1[1][1] + 5)" ( (binary_expression "(int)*param_1[1][1] + 5" (cast_expression "(int)*param_1[1][1]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]))) + number_literal) ))))) ;) (goto_statement "goto LAB_000d6a70;" goto statement_identifier ;) })) (labeled_statement "LAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" statement_identifier : (if_statement "if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" if (parenthesized_expression "((code *)((int)pppppppcVar21 + -5) < (code *)0x2)" ( (binary_expression "(code *)((int)pppppppcVar21 + -5) < (code *)0x2" (cast_expression "(code *)((int)pppppppcVar21 + -5)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppcVar21 + -5)" ( (binary_expression "(int)pppppppcVar21 + -5" (cast_expression "(int)pppppppcVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) < (cast_expression "(code *)0x2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" { (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_000d6970;" goto statement_identifier ;) }))) }))) (if_statement "if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }" if (parenthesized_expression "(*param_1 != (code ******)0x0)" ( (binary_expression "*param_1 != (code ******)0x0" (pointer_expression "*param_1" * identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }" { (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" * (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((*param_1)[3])" ( (subscript_expression "(*param_1)[3]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]) ))) ;) })) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x524c" identifier + number_literal) )))) )) (argument_list "(param_1[6])" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" * (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1[5][3])" ( (subscript_expression "param_1[5][3]" (subscript_expression "param_1[5]" identifier [ number_literal ]) [ number_literal ]) ))) ;) (if_statement "if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }" if (parenthesized_expression "(local_2c == *(uint *)PTR___stack_chk_guard_0018fecc)" ( (binary_expression "local_2c == *(uint *)PTR___stack_chk_guard_0018fecc" identifier == (pointer_expression "*(uint *)PTR___stack_chk_guard_0018fecc" * (cast_expression "(uint *)PTR___stack_chk_guard_0018fecc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return pppppppcVar21;\n  }" { (return_statement "return pppppppcVar21;" return identifier ;) })) (expression_statement "pcVar3 = FUN_000d7350;" (assignment_expression "pcVar3 = FUN_000d7350" identifier = identifier) ;) (expression_statement "uVar20 = local_2c;" (assignment_expression "uVar20 = local_2c" identifier = identifier) ;) (expression_statement "puVar22 = PTR___stack_chk_fail_0018fea0;" (assignment_expression "puVar22 = PTR___stack_chk_fail_0018fea0" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0018fea0)();" (call_expression "(*(code *)PTR___stack_chk_fail_0018fea0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0018fea0)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0018fea0" * (cast_expression "(code *)PTR___stack_chk_fail_0018fea0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_198 = puVar22 + 0xc05d0;" (assignment_expression "puStack_198 = puVar22 + 0xc05d0" identifier = (binary_expression "puVar22 + 0xc05d0" identifier + number_literal)) ;) (expression_statement "ppppppcStack_188 = local_70;" (assignment_expression "ppppppcStack_188 = local_70" identifier = identifier) ;) (expression_statement "uStack_174 = uStack_64;" (assignment_expression "uStack_174 = uStack_64" identifier = identifier) ;) (expression_statement "pppcStack_17c = local_60;" (assignment_expression "pppcStack_17c = local_60" identifier = identifier) ;) (expression_statement "ppppppcStack_178 = local_5c;" (assignment_expression "ppppppcStack_178 = local_5c" identifier = identifier) ;) (expression_statement "apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);" (assignment_expression "apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c)" (subscript_expression "apppppcStack_114[0x1a]" identifier [ number_literal ]) = (cast_expression "(code *****)**(undefined4 **)(puVar22 + 0xb8b7c)" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "**(undefined4 **)(puVar22 + 0xb8b7c)" * (pointer_expression "*(undefined4 **)(puVar22 + 0xb8b7c)" * (cast_expression "(undefined4 **)(puVar22 + 0xb8b7c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0xb8b7c)" ( (binary_expression "puVar22 + 0xb8b7c" identifier + number_literal) ))))))) ;) (expression_statement "iStack_130 = 0;" (assignment_expression "iStack_130 = 0" identifier = number_literal) ;) (expression_statement "ppppppcStack_18c = (code ******)param_4;" (assignment_expression "ppppppcStack_18c = (code ******)param_4" identifier = (cast_expression "(code ******)param_4" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_180 = (code ******)pppppppcVar24;" (assignment_expression "ppppppcStack_180 = (code ******)pppppppcVar24" identifier = (cast_expression "(code ******)pppppppcVar24" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_a8 = (code ******)param_1;" (assignment_expression "ppppppcStack_a8 = (code ******)param_1" identifier = (cast_expression "(code ******)param_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_a4 = (code ******)pppppppcVar21;" (assignment_expression "ppppppcStack_a4 = (code ******)pppppppcVar21" identifier = (cast_expression "(code ******)pppppppcVar21" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_a0 = (code ******)unaff_s2;" (assignment_expression "ppppppcStack_a0 = (code ******)unaff_s2" identifier = (cast_expression "(code ******)unaff_s2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_9c = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_9c = (code ******)unaff_s3" identifier = (cast_expression "(code ******)unaff_s3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_98 = (code ******)param_2;" (assignment_expression "ppppppcStack_98 = (code ******)param_2" identifier = (cast_expression "(code ******)param_2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_94 = (code ******)unaff_s5;" (assignment_expression "ppppppcStack_94 = (code ******)unaff_s5" identifier = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_90 = (code ******)unaff_s6;" (assignment_expression "ppppppcStack_90 = (code ******)unaff_s6" identifier = (cast_expression "(code ******)unaff_s6" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pcStack_8c = unaff_s7;" (assignment_expression "pcStack_8c = unaff_s7" identifier = identifier) ;) (expression_statement "ppppppcStack_88 = (code ******)unaff_s8;" (assignment_expression "ppppppcStack_88 = (code ******)unaff_s8" identifier = (cast_expression "(code ******)unaff_s8" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" identifier = identifier) ;) (expression_statement "ppppppcStack_78 = (code ******)param_3;" (assignment_expression "ppppppcStack_78 = (code ******)param_3" identifier = (cast_expression "(code ******)param_3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" if (parenthesized_expression "(*(char *)(uVar20 + 0x2e) == '\0')" ( (binary_expression "*(char *)(uVar20 + 0x2e) == '\0'" (pointer_expression "*(char *)(uVar20 + 0x2e)" * (cast_expression "(char *)(uVar20 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2e)" ( (binary_expression "uVar20 + 0x2e" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }" { (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();" (assignment_expression "pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" identifier = (cast_expression "(code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))" ( (pointer_expression "*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" * (cast_expression "(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" ( (binary_expression "*(int *)(puVar22 + 0xb8808) + 0x4cd8" (pointer_expression "*(int *)(puVar22 + 0xb8808)" * (cast_expression "(int *)(puVar22 + 0xb8808)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0xb8808)" ( (binary_expression "puVar22 + 0xb8808" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))))) ;) (expression_statement "pppppppcVar6 = pppppppcVar25;" (assignment_expression "pppppppcVar6 = pppppppcVar25" identifier = identifier) ;) (if_statement "if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }" if (parenthesized_expression "(pppppppcVar25 == (code *******)0x0)" ( (binary_expression "pppppppcVar25 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }" { (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 1;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 1" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" * (cast_expression "(undefined1 *)(uVar20 + 0x2d)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2d)" ( (binary_expression "uVar20 + 0x2d" identifier + number_literal) )))) = number_literal) ;) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" if (parenthesized_expression "((code *******)ppppppcStack_78 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_78 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_78" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }" { (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" identifier = identifier) ;) (labeled_statement "LAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);" statement_identifier : (expression_statement "param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);" (assignment_expression "param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" identifier = (cast_expression "(code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" ( (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x1cfc" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" * (cast_expression "(int *)(puStack_198 + -0x7c94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7c94)" ( (binary_expression "puStack_198 + -0x7c94" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,&iStack_130)" ( identifier , (pointer_expression "&iStack_130" & identifier) ))))) ;)) (expression_statement "pppppppcVar6 = param_1;" (assignment_expression "pppppppcVar6 = param_1" identifier = identifier) ;) (if_statement "if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (compound_statement "{\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" { (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" if (parenthesized_expression "(*(int *)**(undefined4 **)(uVar20 + 4) < 3)" ( (binary_expression "*(int *)**(undefined4 **)(uVar20 + 4) < 3" (pointer_expression "*(int *)**(undefined4 **)(uVar20 + 4)" * (cast_expression "(int *)**(undefined4 **)(uVar20 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(uVar20 + 4)" * (pointer_expression "*(undefined4 **)(uVar20 + 4)" * (cast_expression "(undefined4 **)(uVar20 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) ))))))) < number_literal) )) (compound_statement "{\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }" { (if_statement "if (param_1 == (code *******)0x0) goto LAB_000d74f0;" if (parenthesized_expression "(param_1 == (code *******)0x0)" ( (binary_expression "param_1 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d74f0;" goto statement_identifier ;)) (labeled_statement "LAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);" statement_identifier : (expression_statement "(**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(uVar20 + 0x34,0,0x30)" ( (binary_expression "uVar20 + 0x34" identifier + number_literal) , number_literal , number_literal ))) ;)) }) (else_clause "else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" else (compound_statement "{\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" { (expression_statement "uStack_1a0 = uStack_1a0 & 0xffffffff;" (assignment_expression "uStack_1a0 = uStack_1a0 & 0xffffffff" identifier = (binary_expression "uStack_1a0 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))()" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xb40" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (if_statement "if (param_1 != (code *******)0x0) goto LAB_000d8034;" if (parenthesized_expression "(param_1 != (code *******)0x0)" ( (binary_expression "param_1 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d8034;" goto statement_identifier ;)) (labeled_statement "LAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);" statement_identifier : (expression_statement "ppppppcStack_168 = *(code *******)(uVar20 + 0x44);" (assignment_expression "ppppppcStack_168 = *(code *******)(uVar20 + 0x44)" identifier = (pointer_expression "*(code *******)(uVar20 + 0x44)" * (cast_expression "(code *******)(uVar20 + 0x44)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) ))))) ;)) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" if (parenthesized_expression "((code *******)ppppppcStack_168 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_168 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_168" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }" { (if_statement "if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }" if (parenthesized_expression "((code *******)ppppppcStack_170 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_170 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppcVar6 = (code *******)0x0;" (assignment_expression "pppppppcVar6 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;" statement_identifier : (expression_statement "param_1 = (code *******)ppppppcStack_170;" (assignment_expression "param_1 = (code *******)ppppppcStack_170" identifier = (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;)) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppcVar6 = pppppppcVar25;" (assignment_expression "pppppppcVar6 = pppppppcVar25" identifier = identifier) ;) (if_statement "if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }" if (parenthesized_expression "(1 < (int)ppppppcStack_170)" ( (binary_expression "1 < (int)ppppppcStack_170" number_literal < (cast_expression "(int)ppppppcStack_170" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }" { (expression_statement "sqlite3_randomness(4,&pppppcStack_120);" (call_expression "sqlite3_randomness(4,&pppppcStack_120)" identifier (argument_list "(4,&pppppcStack_120)" ( number_literal , (pointer_expression "&pppppcStack_120" & identifier) ))) ;) (expression_statement "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(4,uStack_1a0._4_4_)" identifier (argument_list "(4,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "param_4 = (code *******)&DAT_00000004;" (assignment_expression "param_4 = (code *******)&DAT_00000004" identifier = (cast_expression "(code *******)&DAT_00000004" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000004" & identifier))) ;) (expression_statement "pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }" if (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" ( (binary_expression "pppppppcVar6 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }" { (if_statement "if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }" if (parenthesized_expression "(param_1 == (code *******)0x3)" ( (binary_expression "param_1 == (code *******)0x3" identifier == (cast_expression "(code *******)0x3" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }" { (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7110)" ( (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7110" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" * (cast_expression "(int *)(puStack_198 + -0x7d50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d50)" ( (binary_expression "puStack_198 + -0x7d50" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,pppppcStack_120)" ( identifier , identifier ))) ;) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));" (assignment_expression "pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" identifier = (cast_expression "(code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 8))" ( (pointer_expression "*(undefined4 *)(uVar20 + 8)" * (cast_expression "(undefined4 *)(uVar20 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 8)" ( (binary_expression "uVar20 + 8" identifier + number_literal) )))) ))))) ;) })) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,4,4)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) })) })) (labeled_statement "LAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);" statement_identifier : (expression_statement "(**(code **)(puVar22 + -0x7fa8))(puStack_164);" (call_expression "(**(code **)(puVar22 + -0x7fa8))(puStack_164)" (parenthesized_expression "(**(code **)(puVar22 + -0x7fa8))" ( (pointer_expression "**(code **)(puVar22 + -0x7fa8)" * (pointer_expression "*(code **)(puVar22 + -0x7fa8)" * (cast_expression "(code **)(puVar22 + -0x7fa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7fa8)" ( (binary_expression "puVar22 + -0x7fa8" identifier + number_literal) ))))) )) (argument_list "(puStack_164)" ( identifier ))) ;)) (expression_statement "unaff_s5 = pppppppcVar24;" (assignment_expression "unaff_s5 = pppppppcVar24" identifier = identifier) ;) }) (else_clause "else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" else (compound_statement "{\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" { (expression_statement "ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);" (assignment_expression "ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" identifier = (cast_expression "(code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" ( (binary_expression "(*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00" (binary_expression "(*(ushort *)(uVar20 + 0x42) & 1) << 0x10" (parenthesized_expression "(*(ushort *)(uVar20 + 0x42) & 1)" ( (binary_expression "*(ushort *)(uVar20 + 0x42) & 1" (pointer_expression "*(ushort *)(uVar20 + 0x42)" * (cast_expression "(ushort *)(uVar20 + 0x42)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x42)" ( (binary_expression "uVar20 + 0x42" identifier + number_literal) )))) & number_literal) )) << number_literal) | (binary_expression "*(ushort *)(uVar20 + 0x42) & 0xfe00" (pointer_expression "*(ushort *)(uVar20 + 0x42)" * (cast_expression "(ushort *)(uVar20 + 0x42)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x42)" ( (binary_expression "uVar20 + 0x42" identifier + number_literal) )))) & number_literal)) )))) ;) (if_statement "if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" if (parenthesized_expression "(ppppppcStack_15c == (code ******)&_gp_1)" ( (binary_expression "ppppppcStack_15c == (code ******)&_gp_1" identifier == (cast_expression "(code ******)&_gp_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "&_gp_1" & identifier))) )) (compound_statement "{\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" { (expression_statement "iVar23 = **(int **)(uVar20 + 0x20);" (assignment_expression "iVar23 = **(int **)(uVar20 + 0x20)" identifier = (pointer_expression "**(int **)(uVar20 + 0x20)" * (pointer_expression "*(int **)(uVar20 + 0x20)" * (cast_expression "(int **)(uVar20 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 0x20)" ( (binary_expression "uVar20 + 0x20" identifier + number_literal) )))))) ;) (expression_statement "param_1 = (code *******)0x1;" (assignment_expression "param_1 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "iStack_154 = iVar23;" (assignment_expression "iStack_154 = iVar23" identifier = identifier) ;) (if_statement "if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" if (parenthesized_expression "(*(code ********)(iVar23 + 0x60) < ppppppcStack_168)" ( (binary_expression "*(code ********)(iVar23 + 0x60) < ppppppcStack_168" (pointer_expression "*(code ********)(iVar23 + 0x60)" * (cast_expression "(code ********)(iVar23 + 0x60)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iVar23 + 0x60)" ( (binary_expression "iVar23 + 0x60" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }" { (expression_statement "ppppppcStack_140 = *(code *******)(uVar20 + 0x48);" (assignment_expression "ppppppcStack_140 = *(code *******)(uVar20 + 0x48)" identifier = (pointer_expression "*(code *******)(uVar20 + 0x48)" * (cast_expression "(code *******)(uVar20 + 0x48)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar20 + 0x48)" ( (binary_expression "uVar20 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);" (assignment_expression "ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" identifier = (cast_expression "(code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "unaff_s3 = (code *******)ppppppcStack_168;" (assignment_expression "unaff_s3 = (code *******)ppppppcStack_168" identifier = (cast_expression "(code *******)ppppppcStack_168" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "param_2 = pppppppcVar25;" (assignment_expression "param_2 = pppppppcVar25" identifier = identifier) ;) (expression_statement "ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);" (assignment_expression "ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" identifier = (cast_expression "(code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);" do (compound_statement "{\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  }" { (expression_statement "pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);" (assignment_expression "pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4)" identifier = (cast_expression "(code *******)(iVar23 + (int)param_1 * 4)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar23 + (int)param_1 * 4)" ( (binary_expression "iVar23 + (int)param_1 * 4" identifier + (binary_expression "(int)param_1 * 4" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "unaff_s2 = (code *******)pppppppcVar21[0x19];" (assignment_expression "unaff_s2 = (code *******)pppppppcVar21[0x19]" identifier = (cast_expression "(code *******)pppppppcVar21[0x19]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppcVar21[0x19]" identifier [ number_literal ]))) ;) (expression_statement "pppppppcVar6 = (code *******)((int)param_1 + 3);" (assignment_expression "pppppppcVar6 = (code *******)((int)param_1 + 3)" identifier = (cast_expression "(code *******)((int)param_1 + 3)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + 3)" ( (binary_expression "(int)param_1 + 3" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (if_statement "if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }" if (parenthesized_expression "(unaff_s2 < unaff_s3)" ( (binary_expression "unaff_s2 < unaff_s3" identifier < identifier) )) (compound_statement "{\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }" { (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "ppppppcStack_16c = (code ******)pppppppcVar6;" (assignment_expression "ppppppcStack_16c = (code ******)pppppppcVar6" identifier = (cast_expression "(code ******)pppppppcVar6" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)ppppppcStack_184)" ( (pointer_expression "*(code *)ppppppcStack_184" * (cast_expression "(code *)ppppppcStack_184" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" if (parenthesized_expression "(param_2 == (code *******)0x0)" ( (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }" { (expression_statement "pppppppcVar16 = (code *******)0xffffffff;" (assignment_expression "pppppppcVar16 = (code *******)0xffffffff" identifier = (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }" if (parenthesized_expression "(param_1 == (code *******)0x1)" ( (binary_expression "param_1 == (code *******)0x1" identifier == (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                          pppppppcVar16 = unaff_s3;\n                        }" { (expression_statement "pppppppcVar16 = unaff_s3;" (assignment_expression "pppppppcVar16 = unaff_s3" identifier = identifier) ;) })) (expression_statement "pppppppcVar21[0x19] = (code ******)pppppppcVar16;" (assignment_expression "pppppppcVar21[0x19] = (code ******)pppppppcVar16" (subscript_expression "pppppppcVar21[0x19]" identifier [ number_literal ]) = (cast_expression "(code ******)pppppppcVar16" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "(*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);" (call_expression "(*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1)" (parenthesized_expression "(*(code *)ppppppcStack_168)" ( (pointer_expression "*(code *)ppppppcStack_168" * (cast_expression "(code *)ppppppcStack_168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar20,ppppppcStack_16c,1)" ( identifier , identifier , number_literal ))) ;) (expression_statement "param_4 = pppppppcVar6;" (assignment_expression "param_4 = pppppppcVar6" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }) (else_clause "else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" else (compound_statement "{\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" { (expression_statement "param_4 = pppppppcVar6;" (assignment_expression "param_4 = pppppppcVar6" identifier = identifier) ;) (expression_statement "unaff_s3 = unaff_s2;" (assignment_expression "unaff_s3 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }" if (parenthesized_expression "(param_2 != (code *******)&DAT_00000005)" ( (binary_expression "param_2 != (code *******)&DAT_00000005" identifier != (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) (compound_statement "{\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pppppppcVar6 = param_2;" (assignment_expression "pppppppcVar6 = param_2" identifier = identifier) ;) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "ppppppcStack_18c = (code ******)0x0;" (assignment_expression "ppppppcStack_18c = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) }))) })) (expression_statement "param_1 = (code *******)((int)param_1 + 1);" (assignment_expression "param_1 = (code *******)((int)param_1 + 1)" identifier = (cast_expression "(code *******)((int)param_1 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + 1)" ( (binary_expression "(int)param_1 + 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(param_1 != (code *******)&DAT_00000005)" ( (binary_expression "param_1 != (code *******)&DAT_00000005" identifier != (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) ;) (expression_statement "ppppppcStack_168 = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_168 = (code ******)unaff_s3" identifier = (cast_expression "(code ******)unaff_s3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" if (parenthesized_expression "(*(code ********)(iStack_154 + 0x60) < unaff_s3)" ( (binary_expression "*(code ********)(iStack_154 + 0x60) < unaff_s3" (pointer_expression "*(code ********)(iStack_154 + 0x60)" * (cast_expression "(code ********)(iStack_154 + 0x60)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }" { (expression_statement "param_1 = *(code ********)(iStack_154 + 0x60);" (assignment_expression "param_1 = *(code ********)(iStack_154 + 0x60)" identifier = (pointer_expression "*(code ********)(iStack_154 + 0x60)" * (cast_expression "(code ********)(iStack_154 + 0x60)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "pppppppcVar6 = *(code ********)(uVar20 + 0x44);" (assignment_expression "pppppppcVar6 = *(code ********)(uVar20 + 0x44)" identifier = (pointer_expression "*(code ********)(uVar20 + 0x44)" * (cast_expression "(code ********)(uVar20 + 0x44)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) ))))) ;) (expression_statement "ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);" (assignment_expression "ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" identifier = (cast_expression "(code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" ( (binary_expression "(uint)((int)pppppppcVar6 + 0x21) >> 0xc" (call_expression "(uint)((int)pppppppcVar6 + 0x21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pppppppcVar6 + 0x21)" ( (binary_expression "(int)pppppppcVar6 + 0x21" (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) >> number_literal) )))) ;) (expression_statement "pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);" (assignment_expression "pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1)" identifier = (cast_expression "(code *******)((int)ppppppcStack_158 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppcStack_158 + 1)" ( (binary_expression "(int)ppppppcStack_158 + 1" (cast_expression "(int)ppppppcStack_158" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);" (assignment_expression "unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" identifier = (cast_expression "(code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" ( (binary_expression "(int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2" (cast_expression "(int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe)" ( (binary_expression "(int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe" (binary_expression "(int)pppppppcVar6 + (int)ppppppcStack_158 * 10" (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)ppppppcStack_158 * 10" (cast_expression "(int)ppppppcStack_158" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) ))) * number_literal) )))) ;) (expression_statement "ppppppcStack_134 = (code ******)pppppppcVar6;" (assignment_expression "ppppppcStack_134 = (code ******)pppppppcVar6" identifier = (cast_expression "(code ******)pppppppcVar6" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);" (assignment_expression "puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" identifier = (cast_expression "(undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" (parenthesized_expression "(**(code **)(puVar22 + -0x7f50))" ( (pointer_expression "**(code **)(puVar22 + -0x7f50)" * (pointer_expression "*(code **)(puVar22 + -0x7f50)" * (cast_expression "(code **)(puVar22 + -0x7f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7f50)" ( (binary_expression "puVar22 + -0x7f50" identifier + number_literal) ))))) )) (argument_list "((int)unaff_s2 >> 0x1f,unaff_s2)" ( (binary_expression "(int)unaff_s2 >> 0x1f" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) , identifier ))))) ;) (expression_statement "unaff_s3 = pppppppcVar6;" (assignment_expression "unaff_s3 = pppppppcVar6" identifier = identifier) ;) (expression_statement "puStack_164 = puVar8;" (assignment_expression "puStack_164 = puVar8" identifier = identifier) ;) (if_statement "if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }" if (parenthesized_expression "(puVar8 != (undefined4 *)0x0)" ( (binary_expression "puVar8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }" { (expression_statement "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(puVar8,0,unaff_s2)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar8[1] = pppppppcVar21;" (assignment_expression "puVar8[1] = pppppppcVar21" (subscript_expression "puVar8[1]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }" if (parenthesized_expression "((code *******)0x1000 < pppppppcVar6)" ( (binary_expression "(code *******)0x1000 < pppppppcVar6" (cast_expression "(code *******)0x1000" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                        unaff_s3 = (code *******)0x1000;\n                      }" { (expression_statement "unaff_s3 = (code *******)0x1000;" (assignment_expression "unaff_s3 = (code *******)0x1000" identifier = (cast_expression "(code *******)0x1000" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) })) (expression_statement "unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);" (assignment_expression "unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" identifier = (cast_expression "(code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7f50))" ( (pointer_expression "**(code **)(puStack_198 + -0x7f50)" * (pointer_expression "*(code **)(puStack_198 + -0x7f50)" * (cast_expression "(code **)(puStack_198 + -0x7f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7f50)" ( (binary_expression "puStack_198 + -0x7f50" identifier + number_literal) ))))) )) (argument_list "(0,(int)unaff_s3 << 1)" ( number_literal , (binary_expression "(int)unaff_s3 << 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))))) ;) (if_statement "if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }" if (parenthesized_expression "(unaff_s2 == (code *******)0x0)" ( (binary_expression "unaff_s2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }" { (expression_statement "param_2 = (code *******)&DAT_00000007;" (assignment_expression "param_2 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (labeled_statement "LAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);" statement_identifier : (expression_statement "param_1 = *(code ********)(puStack_198 + -0x7fa8);" (assignment_expression "param_1 = *(code ********)(puStack_198 + -0x7fa8)" identifier = (pointer_expression "*(code ********)(puStack_198 + -0x7fa8)" * (cast_expression "(code ********)(puStack_198 + -0x7fa8)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puStack_198 + -0x7fa8)" ( (binary_expression "puStack_198 + -0x7fa8" identifier + number_literal) ))))) ;)) (expression_statement "(*(code *)param_1)(unaff_s2);" (call_expression "(*(code *)param_1)(unaff_s2)" (parenthesized_expression "(*(code *)param_1)" ( (pointer_expression "*(code *)param_1" * (cast_expression "(code *)param_1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "(*(code *)param_1)(puStack_164);" (call_expression "(*(code *)param_1)(puStack_164)" (parenthesized_expression "(*(code *)param_1)" ( (pointer_expression "*(code *)param_1" * (cast_expression "(code *)param_1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puStack_164)" ( identifier ))) ;) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (goto_statement "goto LAB_000d7644;" goto statement_identifier ;) })) (expression_statement "param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);" (assignment_expression "param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc)" identifier = (cast_expression "(code *******)((uint)((int)param_1 + 0x22) >> 0xc)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)((int)param_1 + 0x22) >> 0xc)" ( (binary_expression "(uint)((int)param_1 + 0x22) >> 0xc" (call_expression "(uint)((int)param_1 + 0x22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)param_1 + 0x22)" ( (binary_expression "(int)param_1 + 0x22" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) >> number_literal) )))) ;) (expression_statement "pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);" (assignment_expression "pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21)" identifier = (cast_expression "(code *******)(uint)(param_1 < pppppppcVar21)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(uint)(param_1 < pppppppcVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(param_1 < pppppppcVar21)" ( (binary_expression "param_1 < pppppppcVar21" identifier < identifier) ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (expression_statement "ppppppcStack_16c = (code ******)param_1;" (assignment_expression "ppppppcStack_16c = (code ******)param_1" identifier = (cast_expression "(code ******)param_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }" { (expression_statement "puVar8 = puStack_164 + (int)param_1 * 5;" (assignment_expression "puVar8 = puStack_164 + (int)param_1 * 5" identifier = (binary_expression "puStack_164 + (int)param_1 * 5" identifier + (binary_expression "(int)param_1 * 5" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "pppppcStack_148 = (code *****)&pppppcStack_120;" (assignment_expression "pppppcStack_148 = (code *****)&pppppcStack_120" identifier = (cast_expression "(code *****)&pppppcStack_120" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "&pppppcStack_120" & identifier))) ;) (expression_statement "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);" (assignment_expression "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" identifier = (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x2574)" ( (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x2574" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" * (cast_expression "(int *)(puStack_198 + -0x7c94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7c94)" ( (binary_expression "puStack_198 + -0x7c94" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);" (assignment_expression "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" identifier = (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7240)" ( (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7240" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" * (cast_expression "(int *)(puStack_198 + -0x7d50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d50)" ( (binary_expression "puStack_198 + -0x7d50" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pppppppcVar24 = param_1;" (assignment_expression "pppppppcVar24 = param_1" identifier = identifier) ;) (expression_statement "uStack_160 = uVar20;" (assignment_expression "uStack_160 = uVar20" identifier = identifier) ;) (expression_statement "ppppppcStack_13c = (code ******)pppppppcVar25;" (assignment_expression "ppppppcStack_13c = (code ******)pppppppcVar25" identifier = (cast_expression "(code ******)pppppppcVar25" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (do_statement "do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);" do (compound_statement "{\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        }" { (expression_statement "ppppppcStack_16c = (code ******)pppppppcVar24;" (assignment_expression "ppppppcStack_16c = (code ******)pppppppcVar24" identifier = (cast_expression "(code ******)pppppppcVar24" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);" (assignment_expression "param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" identifier = (cast_expression "(code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" (parenthesized_expression "(*pcStack_14c)" ( (pointer_expression "*pcStack_14c" * identifier) )) (argument_list "(uStack_160,ppppppcStack_16c,pppppcStack_148)" ( identifier , identifier , identifier ))))) ;) (expression_statement "uVar20 = uStack_160;" (assignment_expression "uVar20 = uStack_160" identifier = identifier) ;) (expression_statement "pppppppcVar25 = (code *******)ppppppcStack_13c;" (assignment_expression "pppppppcVar25 = (code *******)ppppppcStack_13c" identifier = (cast_expression "(code *******)ppppppcStack_13c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (if_statement "if (param_2 != (code *******)0x0) goto LAB_000d799c;" if (parenthesized_expression "(param_2 != (code *******)0x0)" ( (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d799c;" goto statement_identifier ;)) (expression_statement "ppppppcStack_184 = ppppppcStack_11c + 1;" (assignment_expression "ppppppcStack_184 = ppppppcStack_11c + 1" identifier = (binary_expression "ppppppcStack_11c + 1" identifier + number_literal)) ;) (if_statement "if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" if (parenthesized_expression "(ppppppcStack_16c == ppppppcStack_158)" ( (binary_expression "ppppppcStack_16c == ppppppcStack_158" identifier == identifier) )) (compound_statement "{\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }" { (expression_statement "unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);" (assignment_expression "unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118)" identifier = (cast_expression "(code *******)((int)ppppppcStack_134 - iStack_118)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppcStack_134 - iStack_118)" ( (binary_expression "(int)ppppppcStack_134 - iStack_118" (cast_expression "(int)ppppppcStack_134" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) )))) ;) }) (else_clause "else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" else (compound_statement "{\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" { (expression_statement "unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);" (assignment_expression "unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" identifier = (cast_expression "(code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" ( (binary_expression "(int)pppppcStack_120 - (int)ppppppcStack_184 >> 2" (binary_expression "(int)pppppcStack_120 - (int)ppppppcStack_184" (cast_expression "(int)pppppcStack_120" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppppppcStack_184" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) )))) ;) }))) (expression_statement "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);" (assignment_expression "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" identifier = (cast_expression "(undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" ( (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2" (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14 + 8" (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14" (cast_expression "(int)puStack_164" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "puStack_164[1] * 0x14" (subscript_expression "puStack_164[1]" identifier [ number_literal ]) * number_literal)) + number_literal) + (binary_expression "iStack_118 * 2" identifier * number_literal)) )))) ;) (expression_statement "iStack_118 = iStack_118 + 1;" (assignment_expression "iStack_118 = iStack_118 + 1" identifier = (binary_expression "iStack_118 + 1" identifier + number_literal)) ;) (expression_statement "puStack_150 = puVar9;" (assignment_expression "puStack_150 = puVar9" identifier = identifier) ;) (expression_statement "ppppppcStack_11c = ppppppcStack_184;" (assignment_expression "ppppppcStack_11c = ppppppcStack_184" identifier = identifier) ;) (if_statement "if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" if (parenthesized_expression "((int)unaff_s3 < 1)" ( (binary_expression "(int)unaff_s3 < 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }" { (expression_statement "pppppcStack_12c = (code *****)0x0;" (assignment_expression "pppppcStack_12c = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "uStack_128 = uStack_128 & 0xffffffff;" (assignment_expression "uStack_128 = uStack_128 & 0xffffffff" identifier = (binary_expression "uStack_128 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(apppppcStack_114,0,0x68)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "param_1 = (code *******)0x1;" (assignment_expression "param_1 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (labeled_statement "LAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;" statement_identifier : (expression_statement "unaff_s5 = (code *******)apppppcStack_114;" (assignment_expression "unaff_s5 = (code *******)apppppcStack_114" identifier = (cast_expression "(code *******)apppppcStack_114" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;)) (expression_statement "param_2 = (code *******)&uStack_128;" (assignment_expression "param_2 = (code *******)&uStack_128" identifier = (cast_expression "(code *******)&uStack_128" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&uStack_128" & identifier))) ;) (expression_statement "pppppppcVar21 = (code *******)&pppppcStack_12c;" (assignment_expression "pppppppcVar21 = (code *******)&pppppcStack_12c" identifier = (cast_expression "(code *******)&pppppcStack_12c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&pppppcStack_12c" & identifier))) ;) (do_statement "do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);" do (compound_statement "{\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            }" { (if_statement "if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }" if (parenthesized_expression "(((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0)" ( (binary_expression "((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0" (parenthesized_expression "((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U)" ( (binary_expression "(int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U" (binary_expression "(int)unaff_s3 >> ((uint)param_1 & 0x1f)" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "((uint)param_1 & 0x1f)" ( (binary_expression "(uint)param_1 & 0x1f" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) != number_literal) )) (compound_statement "{\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }" { (expression_statement "uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2)" identifier = (call_expression "CONCAT44(pppppppcVar21,unaff_s2)" identifier (argument_list "(pppppppcVar21,unaff_s2)" ( identifier , identifier )))) ;) (expression_statement "param_4 = param_2;" (assignment_expression "param_4 = param_2" identifier = identifier) ;) (expression_statement "(*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);" (call_expression "(*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2])" (parenthesized_expression "(*pcStack_144)" ( (pointer_expression "*pcStack_144" * identifier) )) (argument_list "(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2])" ( identifier , (subscript_expression "apppppcStack_114[(int)param_1 * 2 + 1]" identifier [ (binary_expression "(int)param_1 * 2 + 1" (binary_expression "(int)param_1 * 2" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) , (subscript_expression "unaff_s5[(int)param_1 * 2]" identifier [ (binary_expression "(int)param_1 * 2" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) ))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) })) (expression_statement "param_1 = (code *******)((int)param_1 + 1);" (assignment_expression "param_1 = (code *******)((int)param_1 + 1)" identifier = (cast_expression "(code *******)((int)param_1 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + 1)" ( (binary_expression "(int)param_1 + 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(param_1 < &DAT_0000000d)" ( (binary_expression "param_1 < &DAT_0000000d" identifier < (pointer_expression "&DAT_0000000d" & identifier)) )) ;) }) (else_clause "else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" else (compound_statement "{\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" { (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "puVar13 = puVar9;" (assignment_expression "puVar13 = puVar9" identifier = identifier) ;) (do_statement "do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);" do (compound_statement "{\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            }" { (expression_statement "*puVar13 = (short)pppppppcVar24;" (assignment_expression "*puVar13 = (short)pppppppcVar24" (pointer_expression "*puVar13" * identifier) = (cast_expression "(short)pppppppcVar24" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier)) ;) (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + 1)" ( (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pppppppcVar24 != unaff_s3)" ( (binary_expression "pppppppcVar24 != unaff_s3" identifier != identifier) )) ;) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(apppppcStack_114,0,0x68)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "pcVar3 = pcStack_144;" (assignment_expression "pcVar3 = pcStack_144" identifier = identifier) ;) (expression_statement "unaff_s5 = (code *******)&pppppcStack_12c;" (assignment_expression "unaff_s5 = (code *******)&pppppcStack_12c" identifier = (cast_expression "(code *******)&pppppcStack_12c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&pppppcStack_12c" & identifier))) ;) (expression_statement "param_2 = (code *******)0x0;" (assignment_expression "param_2 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (expression_statement "puStack_138 = puVar8;" (assignment_expression "puStack_138 = puVar8" identifier = identifier) ;) (do_statement "do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);" do (compound_statement "{\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            }" { (expression_statement "pppppcStack_12c = (code *****)0x1;" (assignment_expression "pppppcStack_12c = (code *****)0x1" identifier = (cast_expression "(code *****)0x1" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);" (assignment_expression "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_)" identifier = (call_expression "CONCAT44(puVar9,uStack_128._4_4_)" identifier (argument_list "(puVar9,uStack_128._4_4_)" ( identifier , (field_expression "uStack_128._4_4_" identifier . field_identifier) )))) ;) (if_statement "if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" if (parenthesized_expression "(((uint)param_2 & 1) == 0)" ( (binary_expression "((uint)param_2 & 1) == 0" (parenthesized_expression "((uint)param_2 & 1)" ( (binary_expression "(uint)param_2 & 1" (cast_expression "(uint)param_2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }" { (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (expression_statement "iVar23 = 0;" (assignment_expression "iVar23 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" else (compound_statement "{\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" { (expression_statement "pppppppcVar21 = (code *******)apppppcStack_114;" (assignment_expression "pppppppcVar21 = (code *******)apppppcStack_114" identifier = (cast_expression "(code *******)apppppcStack_114" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (do_statement "do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);" do (compound_statement "{\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                }" { (expression_statement "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2)" identifier = (call_expression "CONCAT44(unaff_s5,unaff_s2)" identifier (argument_list "(unaff_s5,unaff_s2)" ( identifier , identifier )))) ;) (expression_statement "param_4 = (code *******)&uStack_128;" (assignment_expression "param_4 = (code *******)&uStack_128" identifier = (cast_expression "(code *******)&uStack_128" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&uStack_128" & identifier))) ;) (expression_statement "(*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);" (call_expression "(*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21)" ( identifier , (subscript_expression "pppppppcVar21[1]" identifier [ number_literal ]) , (pointer_expression "*pppppppcVar21" * identifier) ))) ;) (expression_statement "uVar20 = uVar20 + 1;" (assignment_expression "uVar20 = uVar20 + 1" identifier = (binary_expression "uVar20 + 1" identifier + number_literal)) ;) (expression_statement "pppppppcVar21 = pppppppcVar21 + 2;" (assignment_expression "pppppppcVar21 = pppppppcVar21 + 2" identifier = (binary_expression "pppppppcVar21 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "(((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0)" ( (binary_expression "((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0" (parenthesized_expression "((int)param_2 >> (uVar20 & 0x1f) & 1U)" ( (binary_expression "(int)param_2 >> (uVar20 & 0x1f) & 1U" (binary_expression "(int)param_2 >> (uVar20 & 0x1f)" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "(uVar20 & 0x1f)" ( (binary_expression "uVar20 & 0x1f" identifier & number_literal) ))) & number_literal) )) != number_literal) )) ;) (expression_statement "iVar23 = uVar20 * 8;" (assignment_expression "iVar23 = uVar20 * 8" identifier = (binary_expression "uVar20 * 8" identifier * number_literal)) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }))) (expression_statement "*(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;" (assignment_expression "*(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_" (pointer_expression "*(code *******)((int)apppppcStack_114 + iVar23 + 4)" * (cast_expression "(code *******)((int)apppppcStack_114 + iVar23 + 4)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)apppppcStack_114 + iVar23 + 4)" ( (binary_expression "(int)apppppcStack_114 + iVar23 + 4" (binary_expression "(int)apppppcStack_114 + iVar23" (cast_expression "(int)apppppcStack_114" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (field_expression "uStack_128._0_4_" identifier . field_identifier)) ;) (expression_statement "*(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;" (assignment_expression "*(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c" (pointer_expression "*(code ******)((int)apppppcStack_114 + iVar23)" * (cast_expression "(code ******)((int)apppppcStack_114 + iVar23)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)apppppcStack_114 + iVar23)" ( (binary_expression "(int)apppppcStack_114 + iVar23" (cast_expression "(int)apppppcStack_114" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "param_2 = (code *******)((int)param_2 + 1);" (assignment_expression "param_2 = (code *******)((int)param_2 + 1)" identifier = (cast_expression "(code *******)((int)param_2 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_2 + 1)" ( (binary_expression "(int)param_2 + 1" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "puVar9 = puVar9 + 1;" (assignment_expression "puVar9 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(param_2 != unaff_s3)" ( (binary_expression "param_2 != unaff_s3" identifier != identifier) )) ;) (expression_statement "param_1 = (code *******)(uVar20 + 1);" (assignment_expression "param_1 = (code *******)(uVar20 + 1)" identifier = (cast_expression "(code *******)(uVar20 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar20 + 1)" ( (binary_expression "uVar20 + 1" identifier + number_literal) )))) ;) (expression_statement "puVar8 = puStack_138;" (assignment_expression "puVar8 = puStack_138" identifier = identifier) ;) (if_statement "if (param_1 < &DAT_0000000d) goto LAB_000d78d0;" if (parenthesized_expression "(param_1 < &DAT_0000000d)" ( (binary_expression "param_1 < &DAT_0000000d" identifier < (pointer_expression "&DAT_0000000d" & identifier)) )) (goto_statement "goto LAB_000d78d0;" goto statement_identifier ;)) }))) (expression_statement "puVar8[6] = iStack_118;" (assignment_expression "puVar8[6] = iStack_118" (subscript_expression "puVar8[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[5] = pppppcStack_12c;" (assignment_expression "puVar8[5] = pppppcStack_12c" (subscript_expression "puVar8[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[3] = puStack_150;" (assignment_expression "puVar8[3] = puStack_150" (subscript_expression "puVar8[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[4] = ppppppcStack_11c;" (assignment_expression "puVar8[4] = ppppppcStack_11c" (subscript_expression "puVar8[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8 = puVar8 + 5;" (assignment_expression "puVar8 = puVar8 + 5" identifier = (binary_expression "puVar8 + 5" identifier + number_literal)) ;) (expression_statement "uVar20 = uStack_160;" (assignment_expression "uVar20 = uStack_160" identifier = identifier) ;) (expression_statement "pppppppcVar25 = (code *******)ppppppcStack_13c;" (assignment_expression "pppppppcVar25 = (code *******)ppppppcStack_13c" identifier = (cast_expression "(code *******)ppppppcStack_13c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1)" identifier = (cast_expression "(code *******)((int)ppppppcStack_16c + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppcStack_16c + 1)" ( (binary_expression "(int)ppppppcStack_16c + 1" (cast_expression "(int)ppppppcStack_16c" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "((int)ppppppcStack_16c < (int)ppppppcStack_158)" ( (binary_expression "(int)ppppppcStack_16c < (int)ppppppcStack_158" (cast_expression "(int)ppppppcStack_16c" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)ppppppcStack_158" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "(**(code **)(puVar22 + -0x7fa8))(unaff_s2);" (call_expression "(**(code **)(puVar22 + -0x7fa8))(unaff_s2)" (parenthesized_expression "(**(code **)(puVar22 + -0x7fa8))" ( (pointer_expression "**(code **)(puVar22 + -0x7fa8)" * (pointer_expression "*(code **)(puVar22 + -0x7fa8)" * (cast_expression "(code **)(puVar22 + -0x7fa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7fa8)" ( (binary_expression "puVar22 + -0x7fa8" identifier + number_literal) ))))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "param_4 = (code *******)0x3;" (assignment_expression "param_4 = (code *******)0x3" identifier = (cast_expression "(code *******)0x3" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pppppppcVar24 = (code *******)local_6c;" (assignment_expression "pppppppcVar24 = (code *******)local_6c" identifier = (cast_expression "(code *******)local_6c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (if_statement "if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" if (parenthesized_expression "(pppppppcVar6 != (code *******)0x0)" ( (binary_expression "pppppppcVar6 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" { (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;" if (parenthesized_expression "(pppppppcVar6 == (code *******)&DAT_00000005)" ( (binary_expression "pppppppcVar6 == (code *******)&DAT_00000005" identifier == (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) (goto_statement "goto LAB_000d765c;" goto statement_identifier ;)) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);" (assignment_expression "ppppppcStack_184 = *(code *******)(iStack_154 + 0x60)" identifier = (pointer_expression "*(code *******)(iStack_154 + 0x60)" * (cast_expression "(code *******)(iStack_154 + 0x60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "*(code *******)(iStack_154 + 0x80) = ppppppcStack_168;" (assignment_expression "*(code *******)(iStack_154 + 0x80) = ppppppcStack_168" (pointer_expression "*(code *******)(iStack_154 + 0x80)" * (cast_expression "(code *******)(iStack_154 + 0x80)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iStack_154 + 0x80)" ( (binary_expression "iStack_154 + 0x80" identifier + number_literal) )))) = identifier) ;) (expression_statement "uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;" (assignment_expression "uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e" identifier = (binary_expression "(uint)((int)local_6c << 0x1c) >> 0x1e" (call_expression "(uint)((int)local_6c << 0x1c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)local_6c << 0x1c)" ( (binary_expression "(int)local_6c << 0x1c" (cast_expression "(int)local_6c" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))) >> number_literal)) ;) (expression_statement "param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);" (assignment_expression "param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" identifier = (cast_expression "(code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 8),uStack_160)" ( (pointer_expression "*(undefined4 *)(uVar20 + 8)" * (cast_expression "(undefined4 *)(uVar20 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 8)" ( (binary_expression "uVar20 + 8" identifier + number_literal) )))) , identifier ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }" if (parenthesized_expression "(param_2 == (code *******)0x0)" ( (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }" { (expression_statement "ppppppcStack_16c = ppppppcStack_15c;" (assignment_expression "ppppppcStack_16c = ppppppcStack_15c" identifier = identifier) ;) (expression_statement "uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);" (assignment_expression "uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c)" identifier = (binary_expression "ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c)" (call_expression "ZEXT48(ppppppcStack_140)" identifier (argument_list "(ppppppcStack_140)" ( identifier ))) * (call_expression "ZEXT48(ppppppcStack_15c)" identifier (argument_list "(ppppppcStack_15c)" ( identifier ))))) ;) (expression_statement "unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);" (assignment_expression "unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" identifier = (cast_expression "(code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa6c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , (pointer_expression "&pppppcStack_120" & identifier) ))))) ;) (expression_statement "param_2 = unaff_s2;" (assignment_expression "param_2 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }" if (parenthesized_expression "(unaff_s2 == (code *******)0x0)" ( (binary_expression "unaff_s2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }" { (if_statement "if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }" if (parenthesized_expression "(((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_))))" ( (binary_expression "((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))" (parenthesized_expression "((int)pppppcStack_120 < (int)uStack_128._0_4_)" ( (binary_expression "(int)pppppcStack_120 < (int)uStack_128._0_4_" (cast_expression "(int)pppppcStack_120" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uStack_128._0_4_" ( (type_descriptor "int" primitive_type) ) (field_expression "uStack_128._0_4_" identifier . field_identifier))) )) || (parenthesized_expression "((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))" ( (parenthesized_expression "(uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_))" ( (binary_expression "uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)" (binary_expression "uStack_128._0_4_ == (code ******)pppppcStack_120" (field_expression "uStack_128._0_4_" identifier . field_identifier) == (cast_expression "(code ******)pppppcStack_120" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) && (parenthesized_expression "(ppppppcStack_11c < uStack_128._4_4_)" ( (binary_expression "ppppppcStack_11c < uStack_128._4_4_" identifier < (field_expression "uStack_128._4_4_" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }" { (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xac4" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),5,&uStack_128)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , number_literal , (pointer_expression "&uStack_128" & identifier) ))) ;) })) (expression_statement "puVar8 = puStack_164;" (assignment_expression "puVar8 = puStack_164" identifier = identifier) ;) (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "unaff_s3 = (code *******)(ppppppcStack_15c + 6);" (assignment_expression "unaff_s3 = (code *******)(ppppppcStack_15c + 6)" identifier = (cast_expression "(code *******)(ppppppcStack_15c + 6)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(ppppppcStack_15c + 6)" ( (binary_expression "ppppppcStack_15c + 6" identifier + number_literal) )))) ;) (expression_statement "pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);" (assignment_expression "pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" identifier = (cast_expression "(code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x9ac" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar23 = *(int *)(puStack_198 + -0x7dc8);" (assignment_expression "iVar23 = *(int *)(puStack_198 + -0x7dc8)" identifier = (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (do_statement "do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);" do (compound_statement "{\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          }" { (do_statement "do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));" do (compound_statement "{\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            }" { (expression_statement "iVar18 = puVar8[1] + -1;" (assignment_expression "iVar18 = puVar8[1] + -1" identifier = (binary_expression "puVar8[1] + -1" (subscript_expression "puVar8[1]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "pppppppcVar6 = (code *******)*puVar8;" (assignment_expression "pppppppcVar6 = (code *******)*puVar8" identifier = (cast_expression "(code *******)*puVar8" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*puVar8" * identifier))) ;) (if_statement "if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }" if (parenthesized_expression "(iVar18 < 0)" ( (binary_expression "iVar18 < 0" identifier < number_literal) )) (compound_statement "{\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }" { (expression_statement "*puStack_164 = 0xffffffff;" (assignment_expression "*puStack_164 = 0xffffffff" (pointer_expression "*puStack_164" * identifier) = number_literal) ;) (labeled_statement "LAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" statement_identifier : (if_statement "if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" if (parenthesized_expression "(*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168)" ( (binary_expression "*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168" (pointer_expression "*(code ********)(**(int **)(uVar20 + 0x20) + 0x10)" * (cast_expression "(code ********)(**(int **)(uVar20 + 0x20) + 0x10)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(**(int **)(uVar20 + 0x20) + 0x10)" ( (binary_expression "**(int **)(uVar20 + 0x20) + 0x10" (pointer_expression "**(int **)(uVar20 + 0x20)" * (pointer_expression "*(int **)(uVar20 + 0x20)" * (cast_expression "(int **)(uVar20 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 0x20)" ( (binary_expression "uVar20 + 0x20" identifier + number_literal) ))))) + number_literal) )))) == (cast_expression "(code *******)ppppppcStack_168" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) )) (compound_statement "{\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" { (expression_statement "param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);" (assignment_expression "param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" identifier = (cast_expression "(code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" ( (binary_expression "*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c" (pointer_expression "*(int *)(uVar20 + 0x48)" * (cast_expression "(int *)(uVar20 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x48)" ( (binary_expression "uVar20 + 0x48" identifier + number_literal) )))) * (cast_expression "(int)ppppppcStack_15c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));" (assignment_expression "param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" identifier = (cast_expression "(code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))" ( (pointer_expression "*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14)" * (cast_expression "(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar22 + -0x7dc8) + 0xa14)" ( (binary_expression "*(int *)(puVar22 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puVar22 + -0x7dc8)" * (cast_expression "(int *)(puVar22 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + -0x7dc8)" ( (binary_expression "puVar22 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4))" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;" if (parenthesized_expression "((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))" ( (binary_expression "(param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0)" (parenthesized_expression "(param_2 != (code *******)0x0)" ( (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) || (parenthesized_expression "(param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0)" ( (comma_expression "param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0" (assignment_expression "param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" identifier = (cast_expression "(code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),uStack_160)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , identifier ))))) , (comma_expression "puVar22 = puStack_198, param_2 != (code *******)0x0" (assignment_expression "puVar22 = puStack_198" identifier = identifier) , (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)))) ))) )) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;)) }))) (expression_statement "*(code *******)(iStack_154 + 0x60) = ppppppcStack_168;" (assignment_expression "*(code *******)(iStack_154 + 0x60) = ppppppcStack_168" (pointer_expression "*(code *******)(iStack_154 + 0x60)" * (cast_expression "(code *******)(iStack_154 + 0x60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) )))) = identifier) ;) (expression_statement "param_2 = unaff_s2;" (assignment_expression "param_2 = unaff_s2" identifier = identifier) ;) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;) })) (expression_statement "piVar14 = puVar8 + puVar8[1] * 5;" (assignment_expression "piVar14 = puVar8 + puVar8[1] * 5" identifier = (binary_expression "puVar8 + puVar8[1] * 5" identifier + (binary_expression "puVar8[1] * 5" (subscript_expression "puVar8[1]" identifier [ number_literal ]) * number_literal))) ;) (expression_statement "param_1 = (code *******)0xffffffff;" (assignment_expression "param_1 = (code *******)0xffffffff" identifier = (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (do_statement "do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);" do (compound_statement "{\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              }" { (expression_statement "iVar10 = piVar14[-3];" (assignment_expression "iVar10 = piVar14[-3]" identifier = (subscript_expression "piVar14[-3]" identifier [ number_literal ])) ;) (if_statement "if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }" if (parenthesized_expression "(iVar10 < *piVar14)" ( (binary_expression "iVar10 < *piVar14" identifier < (pointer_expression "*piVar14" * identifier)) )) (compound_statement "{\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }" { (expression_statement "param_4 = (code *******)piVar14[-1];" (assignment_expression "param_4 = (code *******)piVar14[-1]" identifier = (cast_expression "(code *******)piVar14[-1]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "piVar14[-1]" identifier [ number_literal ]))) ;) (expression_statement "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);" (assignment_expression "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" identifier = (binary_expression "(uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(piVar14[-2] + iVar10 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar14[-2] + iVar10 * 2)" ( (binary_expression "piVar14[-2] + iVar10 * 2" (subscript_expression "piVar14[-2]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) ))))) ;) (expression_statement "pppppppcVar16 = (code *******)param_4[uVar19];" (assignment_expression "pppppppcVar16 = (code *******)param_4[uVar19]" identifier = (cast_expression "(code *******)param_4[uVar19]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_4[uVar19]" identifier [ identifier ]))) ;) (while_statement "while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }" while (parenthesized_expression "(pppppppcVar16 <= pppppppcVar6)" ( (binary_expression "pppppppcVar16 <= pppppppcVar6" identifier <= identifier) )) (compound_statement "{\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }" { (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "piVar14[-3] = iVar10;" (assignment_expression "piVar14[-3] = iVar10" (subscript_expression "piVar14[-3]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (*piVar14 <= iVar10) goto LAB_000d7b7c;" if (parenthesized_expression "(*piVar14 <= iVar10)" ( (binary_expression "*piVar14 <= iVar10" (pointer_expression "*piVar14" * identifier) <= identifier) )) (goto_statement "goto LAB_000d7b7c;" goto statement_identifier ;)) (expression_statement "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);" (assignment_expression "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" identifier = (binary_expression "(uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(piVar14[-2] + iVar10 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar14[-2] + iVar10 * 2)" ( (binary_expression "piVar14[-2] + iVar10 * 2" (subscript_expression "piVar14[-2]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) ))))) ;) (expression_statement "pppppppcVar16 = (code *******)param_4[uVar19];" (assignment_expression "pppppppcVar16 = (code *******)param_4[uVar19]" identifier = (cast_expression "(code *******)param_4[uVar19]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_4[uVar19]" identifier [ identifier ]))) ;) })) (if_statement "if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }" if (parenthesized_expression "(pppppppcVar16 < param_1)" ( (binary_expression "pppppppcVar16 < param_1" identifier < identifier) )) (compound_statement "{\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }" { (expression_statement "pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);" (assignment_expression "pppppppcVar21 = (code *******)(uVar19 + piVar14[1])" identifier = (cast_expression "(code *******)(uVar19 + piVar14[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar19 + piVar14[1])" ( (binary_expression "uVar19 + piVar14[1]" identifier + (subscript_expression "piVar14[1]" identifier [ number_literal ])) )))) ;) (expression_statement "param_1 = pppppppcVar16;" (assignment_expression "param_1 = pppppppcVar16" identifier = identifier) ;) })) })) (labeled_statement "LAB_000d7b7c:\n                                iVar18 = iVar18 + -1;" statement_identifier : (expression_statement "iVar18 = iVar18 + -1;" (assignment_expression "iVar18 = iVar18 + -1" identifier = (binary_expression "iVar18 + -1" identifier + number_literal)) ;)) (expression_statement "piVar14 = piVar14 + -5;" (assignment_expression "piVar14 = piVar14 + -5" identifier = (binary_expression "piVar14 + -5" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar18 != -1)" ( (binary_expression "iVar18 != -1" identifier != number_literal) )) ;) (expression_statement "*puVar8 = param_1;" (assignment_expression "*puVar8 = param_1" (pointer_expression "*puVar8" * identifier) = identifier) ;) (if_statement "if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;" if (parenthesized_expression "(param_1 == (code *******)0xffffffff)" ( (binary_expression "param_1 == (code *******)0xffffffff" identifier == (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d7ef8;" goto statement_identifier ;)) (if_statement "if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" if (parenthesized_expression "((code ******)ppppppcStack_180[0x44] != (code ******)0x0)" ( (binary_expression "(code ******)ppppppcStack_180[0x44] != (code ******)0x0" (cast_expression "(code ******)ppppppcStack_180[0x44]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppcStack_180[0x44]" identifier [ number_literal ])) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" { (expression_statement "param_2 = (code *******)&DAT_00000007;" (assignment_expression "param_2 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (if_statement "if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }" if (parenthesized_expression "(*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0)" ( (binary_expression "*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0" (pointer_expression "*(code *)((int)ppppppcStack_180 + 0x51)" * (cast_expression "(code *)((int)ppppppcStack_180 + 0x51)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppcStack_180 + 0x51)" ( (binary_expression "(int)ppppppcStack_180 + 0x51" (cast_expression "(int)ppppppcStack_180" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (cast_expression "(code)0x0" ( (type_descriptor "code" type_identifier) ) number_literal)) )) (compound_statement "{\n                                  param_2 = (code *******)&DAT_00000009;\n                                }" { (expression_statement "param_2 = (code *******)&DAT_00000009;" (assignment_expression "param_2 = (code *******)&DAT_00000009" identifier = (cast_expression "(code *******)&DAT_00000009" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000009" & identifier))) ;) })) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;) })) }) while (parenthesized_expression "(((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1))" ( (binary_expression "((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1)" (parenthesized_expression "((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21))" ( (binary_expression "(pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)" (parenthesized_expression "(pppppppcVar21 <= ppppppcStack_184)" ( (binary_expression "pppppppcVar21 <= ppppppcStack_184" identifier <= identifier) )) || (parenthesized_expression "(ppppppcStack_168 < pppppppcVar21)" ( (binary_expression "ppppppcStack_168 < pppppppcVar21" identifier < identifier) ))) )) || (parenthesized_expression "(ppppppcStack_140 < param_1)" ( (binary_expression "ppppppcStack_140 < param_1" identifier < identifier) ))) )) ;) (expression_statement "uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;" (assignment_expression "uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38" identifier = (binary_expression "ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38" (binary_expression "ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3)" (call_expression "ZEXT48((code *)((int)pppppppcVar21 + -1))" identifier (argument_list "((code *)((int)pppppppcVar21 + -1))" ( (cast_expression "(code *)((int)pppppppcVar21 + -1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppcVar21 + -1)" ( (binary_expression "(int)pppppppcVar21 + -1" (cast_expression "(int)pppppppcVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) ))) * (call_expression "ZEXT48(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier )))) + number_literal)) ;) (expression_statement "param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);" (assignment_expression "param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" identifier = (cast_expression "(code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" (parenthesized_expression "(*(code *)pppppppcVar24)" ( (pointer_expression "*(code *)pppppppcVar24" * (cast_expression "(code *)pppppppcVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" ( (pointer_expression "*(undefined4 *)(uVar20 + 8)" * (cast_expression "(undefined4 *)(uVar20 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 8)" ( (binary_expression "uVar20 + 8" identifier + number_literal) )))) , identifier , identifier ))))) ;) (expression_statement "param_1 = (code *******)((int)param_1 + -1);" (assignment_expression "param_1 = (code *******)((int)param_1 + -1)" identifier = (cast_expression "(code *******)((int)param_1 + -1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + -1)" ( (binary_expression "(int)param_1 + -1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (param_2 != (code *******)0x0) break;" if (parenthesized_expression "(param_2 != (code *******)0x0)" ( (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);" (assignment_expression "uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c)" identifier = (binary_expression "ZEXT48(param_1) * ZEXT48(ppppppcStack_16c)" (call_expression "ZEXT48(param_1)" identifier (argument_list "(param_1)" ( identifier ))) * (call_expression "ZEXT48(ppppppcStack_16c)" identifier (argument_list "(ppppppcStack_16c)" ( identifier ))))) ;) (expression_statement "param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);" (assignment_expression "param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" identifier = (cast_expression "(code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" (parenthesized_expression "(*(code *)(iVar23 + 0x9e0))" ( (pointer_expression "*(code *)(iVar23 + 0x9e0)" * (cast_expression "(code *)(iVar23 + 0x9e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x9e0)" ( (binary_expression "iVar23 + 0x9e0" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , identifier , identifier ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }) while (parenthesized_expression "(param_2 == (code *******)0x0)" ( (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) ;) })) })) (labeled_statement "LAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);" statement_identifier : (expression_statement "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);" (call_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1)" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puVar22 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puVar22 + -0x7dc8)" * (cast_expression "(int *)(puVar22 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + -0x7dc8)" ( (binary_expression "puVar22 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,3,1)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (goto_statement "goto LAB_000d7648;" goto statement_identifier ;) })) (expression_statement "pppppppcVar6 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }) (else_clause "else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" else (compound_statement "{\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" { (labeled_statement "LAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;" statement_identifier : (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_000d7648:\n                    unaff_s5 = pppppppcVar24;" statement_identifier : (expression_statement "unaff_s5 = pppppppcVar24;" (assignment_expression "unaff_s5 = pppppppcVar24" identifier = identifier) ;)) (if_statement "if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;" if (parenthesized_expression "((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0))" ( (binary_expression "(param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)" (parenthesized_expression "(param_2 == (code *******)&DAT_00000005)" ( (binary_expression "param_2 == (code *******)&DAT_00000005" identifier == (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) || (parenthesized_expression "(pppppppcVar6 = param_2, param_2 == (code *******)0x0)" ( (comma_expression "pppppppcVar6 = param_2, param_2 == (code *******)0x0" (assignment_expression "pppppppcVar6 = param_2" identifier = identifier) , (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ))) )) (goto_statement "goto LAB_000d765c;" goto statement_identifier ;)) }))) }) (else_clause "else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" else (compound_statement "{\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d765c:\n                  pppppppcVar24 = unaff_s5;" statement_identifier : (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;)) (if_statement "if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" if (parenthesized_expression "((code *******)ppppppcStack_170 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_170 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                    pppppppcVar6 = (code *******)0x0;\n                  }" { (expression_statement "pppppppcVar6 = (code *******)0x0;" (assignment_expression "pppppppcVar6 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" else (compound_statement "{\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" { (if_statement "if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;" if (parenthesized_expression "(*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60))" ( (binary_expression "*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)" (pointer_expression "*(uint *)(uVar20 + 0x44)" * (cast_expression "(uint *)(uVar20 + 0x44)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) )))) <= (pointer_expression "*(uint *)(iStack_154 + 0x60)" * (cast_expression "(uint *)(iStack_154 + 0x60)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000d7f78;" goto statement_identifier ;)) (expression_statement "param_1 = (code *******)ppppppcStack_170;" (assignment_expression "param_1 = (code *******)ppppppcStack_170" identifier = (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "pppppppcVar6 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) }))) }))) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);" (assignment_expression "pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" identifier = (cast_expression "(code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" ( (binary_expression "*(int *)(puStack_198 + -0x7d2c) + 0x3b28" (pointer_expression "*(int *)(puStack_198 + -0x7d2c)" * (cast_expression "(int *)(puStack_198 + -0x7d2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d2c)" ( (binary_expression "puStack_198 + -0x7d2c" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(0xf176)" ( number_literal ))))) ;) }))) (if_statement "if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;" if (parenthesized_expression "((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               )" ( (binary_expression "(pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)" (parenthesized_expression "(pppppppcVar6 != (code *******)0x0)" ( (binary_expression "pppppppcVar6 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(pppppppcVar6 != (code *******)&DAT_00000005)" ( (binary_expression "pppppppcVar6 != (code *******)&DAT_00000005" identifier != (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ))) )) (goto_statement "goto LAB_000d8034;" goto statement_identifier ;)) (if_statement "if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }" if (parenthesized_expression "((code ****)pppcStack_17c != (code ****)0x0)" ( (binary_expression "(code ****)pppcStack_17c != (code ****)0x0" (cast_expression "(code ****)pppcStack_17c" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier) != (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }" { (expression_statement "*pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);" (assignment_expression "*pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44)" (pointer_expression "*pppcStack_17c" * identifier) = (cast_expression "(code **)*(code ****)(uVar20 + 0x44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*(code ****)(uVar20 + 0x44)" * (cast_expression "(code ****)(uVar20 + 0x44)" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) )))))) ;) })) (if_statement "if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }" if (parenthesized_expression "((code *******)ppppppcStack_178 != (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_178 != (code *******)0x0" (cast_expression "(code *******)ppppppcStack_178" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }" { (expression_statement "*ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);" (assignment_expression "*ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" (pointer_expression "*ppppppcStack_178" * identifier) = (cast_expression "(code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" * (cast_expression "(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(**(int **)(uVar20 + 0x20) + 0x60)" ( (binary_expression "**(int **)(uVar20 + 0x20) + 0x60" (pointer_expression "**(int **)(uVar20 + 0x20)" * (pointer_expression "*(int **)(uVar20 + 0x20)" * (cast_expression "(int **)(uVar20 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 0x20)" ( (binary_expression "uVar20 + 0x20" identifier + number_literal) ))))) + number_literal) )))))) ;) })) (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d7e2c;" goto statement_identifier ;)) }))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 0;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 0" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" * (cast_expression "(undefined1 *)(uVar20 + 0x2d)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2d)" ( (binary_expression "uVar20 + 0x2d" identifier + number_literal) )))) = number_literal) ;) (if_statement "if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }" if (parenthesized_expression "((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170))" ( (binary_expression "(pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)" (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" ( (binary_expression "pppppppcVar6 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(ppppppcStack_78 != ppppppcStack_170)" ( (binary_expression "ppppppcStack_78 != ppppppcStack_170" identifier != identifier) ))) )) (compound_statement "{\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }" { (expression_statement "pppppppcVar6 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) })) (goto_statement "goto LAB_000d7ea0;" goto statement_identifier ;) })) (if_statement "if (param_1 == (code *******)0x0) goto LAB_000d74f0;" if (parenthesized_expression "(param_1 == (code *******)0x0)" ( (binary_expression "param_1 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d74f0;" goto statement_identifier ;)) }) (else_clause "else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" else (compound_statement "{\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" { (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }" if (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" ( (binary_expression "pppppppcVar6 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }" { (expression_statement "*(undefined1 *)(uVar20 + 0x2c) = 1;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2c) = 1" (pointer_expression "*(undefined1 *)(uVar20 + 0x2c)" * (cast_expression "(undefined1 *)(uVar20 + 0x2c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2c)" ( (binary_expression "uVar20 + 0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" identifier = identifier) ;) (goto_statement "goto LAB_000d7410;" goto statement_identifier ;) })) (if_statement "if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }" if (parenthesized_expression "(pppppppcVar6 == (code *******)&DAT_00000005)" ( (binary_expression "pppppppcVar6 == (code *******)&DAT_00000005" identifier == (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) (compound_statement "{\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }" { (expression_statement "ppppppcStack_18c = (code ******)0x0;" (assignment_expression "ppppppcStack_18c = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "ppppppcStack_170 = (code ******)0x0;" (assignment_expression "ppppppcStack_170 = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d7410;" goto statement_identifier ;) })) (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" identifier = identifier) ;) (labeled_statement "LAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;" statement_identifier : (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d7e2c;" goto statement_identifier ;))) }))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 0;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 0" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" * (cast_expression "(undefined1 *)(uVar20 + 0x2d)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2d)" ( (binary_expression "uVar20 + 0x2d" identifier + number_literal) )))) = number_literal) ;) })) }) (else_clause "else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" else (compound_statement "{\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" { (expression_statement "pppppppcVar6 = (code *******)&DAT_00000008;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000008" identifier = (cast_expression "(code *******)&DAT_00000008" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000008" & identifier))) ;) }))) (labeled_statement "LAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }" statement_identifier : (if_statement "if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }" if (parenthesized_expression "(apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54))" ( (binary_expression "apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)" (subscript_expression "apppppcStack_114[0x1a]" identifier [ number_literal ]) == (cast_expression "(code *****)**(int **)(puStack_198 + -0x7a54)" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "**(int **)(puStack_198 + -0x7a54)" * (pointer_expression "*(int **)(puStack_198 + -0x7a54)" * (cast_expression "(int **)(puStack_198 + -0x7a54)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7a54)" ( (binary_expression "puStack_198 + -0x7a54" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppcVar6;\n  }" { (return_statement "return pppppppcVar6;" return identifier ;) }))) (expression_statement "pcVar3 = *(code **)(puStack_198 + -0x7a80);" (assignment_expression "pcVar3 = *(code **)(puStack_198 + -0x7a80)" identifier = (pointer_expression "*(code **)(puStack_198 + -0x7a80)" * (cast_expression "(code **)(puStack_198 + -0x7a80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7a80)" ( (binary_expression "puStack_198 + -0x7a80" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = FUN_000d80a0;" (assignment_expression "pcVar4 = FUN_000d80a0" identifier = identifier) ;) (expression_statement "pppppcVar2 = apppppcStack_114[0x1a];" (assignment_expression "pppppcVar2 = apppppcStack_114[0x1a]" identifier = (subscript_expression "apppppcStack_114[0x1a]" identifier [ number_literal ])) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = uStack_1a0._0_4_;" (assignment_expression "iVar23 = uStack_1a0._0_4_" identifier = (field_expression "uStack_1a0._0_4_" identifier . field_identifier)) ;) (expression_statement "iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);" (assignment_expression "iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c)" identifier = (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" * (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" * (cast_expression "(int **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e2c)" ( (binary_expression "pcVar3 + 0xb7e2c" identifier + number_literal) )))))) ;) (expression_statement "ppppppcStack_1cc = (code ******)param_1;" (assignment_expression "ppppppcStack_1cc = (code ******)param_1" identifier = (cast_expression "(code ******)param_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1c8 = (code ******)pppppppcVar21;" (assignment_expression "ppppppcStack_1c8 = (code ******)pppppppcVar21" identifier = (cast_expression "(code ******)pppppppcVar21" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1c4 = (code ******)unaff_s2;" (assignment_expression "ppppppcStack_1c4 = (code ******)unaff_s2" identifier = (cast_expression "(code ******)unaff_s2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1c0 = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_1c0 = (code ******)unaff_s3" identifier = (cast_expression "(code ******)unaff_s3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1bc = (code ******)param_2;" (assignment_expression "ppppppcStack_1bc = (code ******)param_2" identifier = (cast_expression "(code ******)param_2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1b8 = (code ******)unaff_s5;" (assignment_expression "ppppppcStack_1b8 = (code ******)unaff_s5" identifier = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pcStack_1b4 = pcVar4;" (assignment_expression "pcStack_1b4 = pcVar4" identifier = identifier) ;) (if_statement "if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }" if (parenthesized_expression "(pppppcVar2 == (code *****)0x0)" ( (binary_expression "pppppcVar2 == (code *****)0x0" identifier == (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d8300;" goto statement_identifier ;) })) (if_statement "if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" if (parenthesized_expression "(uStack_1a0._0_4_ == 0)" ( (binary_expression "uStack_1a0._0_4_ == 0" (field_expression "uStack_1a0._0_4_" identifier . field_identifier) == number_literal) )) (compound_statement "{\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (labeled_statement "LAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;" statement_identifier : (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[2])" ( (subscript_expression "pppppcVar2[2]" identifier [ number_literal ]) ))) ;) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" identifier = (subscript_expression "pppppcVar2[8]" identifier [ number_literal ])) ;) }) (else_clause "else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" else (compound_statement "{\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" { (expression_statement "pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);" (assignment_expression "pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" identifier = (cast_expression "(code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" (parenthesized_expression "(**(code **)((int)*pppppcVar2[1] + 0x1c))" ( (pointer_expression "**(code **)((int)*pppppcVar2[1] + 0x1c)" * (pointer_expression "*(code **)((int)*pppppcVar2[1] + 0x1c)" * (cast_expression "(code **)((int)*pppppcVar2[1] + 0x1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)*pppppcVar2[1] + 0x1c)" ( (binary_expression "(int)*pppppcVar2[1] + 0x1c" (cast_expression "(int)*pppppcVar2[1]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pppppcVar2[1]" * (subscript_expression "pppppcVar2[1]" identifier [ number_literal ]))) + number_literal) ))))) )) (argument_list "(pppppcVar2[1],4)" ( (subscript_expression "pppppcVar2[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d82a0;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }" if (parenthesized_expression "(*(char *)((int)pppppcVar2 + 0x2b) == '\0')" ( (binary_expression "*(char *)((int)pppppcVar2 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)pppppcVar2 + 0x2b)" * (cast_expression "(char *)((int)pppppcVar2 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppcVar2 + 0x2b)" ( (binary_expression "(int)pppppcVar2 + 0x2b" (cast_expression "(int)pppppcVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }" { (expression_statement "*(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;" (assignment_expression "*(undefined1 *)((int)pppppcVar2 + 0x2b) = 1" (pointer_expression "*(undefined1 *)((int)pppppcVar2 + 0x2b)" * (cast_expression "(undefined1 *)((int)pppppcVar2 + 0x2b)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppcVar2 + 0x2b)" ( (binary_expression "(int)pppppcVar2 + 0x2b" (cast_expression "(int)pppppcVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) })) (expression_statement "pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);" (assignment_expression "pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" identifier = (cast_expression "(code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" identifier (argument_list "(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" ( identifier , identifier , number_literal , number_literal , number_literal , identifier , identifier , identifier , number_literal , number_literal ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d82a0;" goto statement_identifier ;)) (expression_statement "iStack_1d8 = -1;" (assignment_expression "iStack_1d8 = -1" identifier = number_literal) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xac4" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[1],10,&iStack_1d8)" ( (subscript_expression "pppppcVar2[1]" identifier [ number_literal ]) , number_literal , (pointer_expression "&iStack_1d8" & identifier) ))) ;) (if_statement "if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" if (parenthesized_expression "(iStack_1d8 == 1)" ( (binary_expression "iStack_1d8 == 1" identifier == number_literal) )) (compound_statement "{\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }" { (if_statement "if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }" if (parenthesized_expression "(-1 < (int)pppppcVar2[4])" ( (binary_expression "-1 < (int)pppppcVar2[4]" number_literal < (cast_expression "(int)pppppcVar2[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppcVar2[4]" identifier [ number_literal ]))) )) (compound_statement "{\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b54) + 0x2844" (pointer_expression "*(int *)(pcVar3 + 0xb7b54)" * (cast_expression "(int *)(pcVar3 + 0xb7b54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b54)" ( (binary_expression "pcVar3 + 0xb7b54" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2,1,0,0)" ( identifier , number_literal , number_literal , number_literal ))) ;) })) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[2])" ( (subscript_expression "pppppcVar2[2]" identifier [ number_literal ]) ))) ;) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" identifier = (subscript_expression "pppppcVar2[8]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" else (compound_statement "{\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[2])" ( (subscript_expression "pppppcVar2[2]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppcVar24 = (code *******)pppppcVar2[0x1b];" (assignment_expression "pppppppcVar24 = (code *******)pppppcVar2[0x1b]" identifier = (cast_expression "(code *******)pppppcVar2[0x1b]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppcVar2[0x1b]" identifier [ number_literal ]))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xba0" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*pppppcVar2,pppppppcVar24,0)" ( (pointer_expression "*pppppcVar2" * identifier) , identifier , number_literal ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd98" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" identifier = (subscript_expression "pppppcVar2[8]" identifier [ number_literal ])) ;) }))) }))) (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb78d8);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb78d8)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb78d8)" * (cast_expression "(code **)(pcVar3 + 0xb78d8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb78d8)" ( (binary_expression "pcVar3 + 0xb78d8" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar4)(uVar17);" (call_expression "(*pcVar4)(uVar17)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(uVar17)" ( identifier ))) ;) (expression_statement "(*pcVar4)(pppppcVar2);" (call_expression "(*pcVar4)(pppppcVar2)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (labeled_statement "LAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }" statement_identifier : (if_statement "if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }" if (parenthesized_expression "(iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c))" ( (binary_expression "iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)" identifier == (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" * (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" * (cast_expression "(int **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e2c)" ( (binary_expression "pcVar3 + 0xb7e2c" identifier + number_literal) )))))) )) (compound_statement "{\n    return pppppppcVar21;\n  }" { (return_statement "return pppppppcVar21;" return identifier ;) }))) (expression_statement "pcVar3 = *(code **)(pcVar3 + 0xb7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 0xb7e00)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb7e00)" * (cast_expression "(code **)(pcVar3 + 0xb7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e00)" ( (binary_expression "pcVar3 + 0xb7e00" identifier + number_literal) ))))) ;) (expression_statement "iVar23 = iStack_1d4;" (assignment_expression "iVar23 = iStack_1d4" identifier = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar17 = *(undefined4 *)(iVar23 + 0xd0);" (assignment_expression "uVar17 = *(undefined4 *)(iVar23 + 0xd0)" identifier = (pointer_expression "*(undefined4 *)(iVar23 + 0xd0)" * (cast_expression "(undefined4 *)(iVar23 + 0xd0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd0)" ( (binary_expression "iVar23 + 0xd0" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0xd58)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar18 = *(int *)(iVar23 + 0x88);" (assignment_expression "iVar18 = *(int *)(iVar23 + 0x88)" identifier = (pointer_expression "*(int *)(iVar23 + 0x88)" * (cast_expression "(int *)(iVar23 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x88)" ( (binary_expression "iVar23 + 0x88" identifier + number_literal) ))))) ;) (if_statement "if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }" if (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }" { (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb7634);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb7634)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb7634)" * (cast_expression "(code **)(pcVar3 + 0xb7634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7634)" ( (binary_expression "pcVar3 + 0xb7634" identifier + number_literal) ))))) ;) (do_statement "do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);" do (compound_statement "{\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    }" { (expression_statement "iVar18 = *(int *)(iVar18 + 0x10);" (assignment_expression "iVar18 = *(int *)(iVar18 + 0x10)" identifier = (pointer_expression "*(int *)(iVar18 + 0x10)" * (cast_expression "(int *)(iVar18 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0x10)" ( (binary_expression "iVar18 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) }) while (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) ;) })) (expression_statement "*(undefined1 *)(iVar23 + 4) = 0;" (assignment_expression "*(undefined1 *)(iVar23 + 4) = 0" (pointer_expression "*(undefined1 *)(iVar23 + 4)" * (cast_expression "(undefined1 *)(iVar23 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 4)" ( (binary_expression "iVar23 + 4" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" if (parenthesized_expression "(pppppppcVar24 == (code *******)0x0)" ( (binary_expression "pppppppcVar24 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    uVar11 = 0;\n  }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) }) (else_clause "else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" else (if_statement "if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" if (parenthesized_expression "(((uint)pppppppcVar24[9] & 0x800) == 0)" ( (binary_expression "((uint)pppppppcVar24[9] & 0x800) == 0" (parenthesized_expression "((uint)pppppppcVar24[9] & 0x800)" ( (binary_expression "(uint)pppppppcVar24[9] & 0x800" (cast_expression "(uint)pppppppcVar24[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppcVar24[9]" identifier [ number_literal ])) & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }" { (expression_statement "iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);" (assignment_expression "iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23)" identifier = (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x485c)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x485c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23)" ( identifier )))) ;) (expression_statement "uVar11 = uVar17;" (assignment_expression "uVar11 = uVar17" identifier = identifier) ;) (if_statement "if (iVar18 != 0) {\n      uVar11 = 0;\n    }" if (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar11 = 0;\n    }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) })) }) (else_clause "else {\n    uVar11 = 0;\n  }" else (compound_statement "{\n    uVar11 = 0;\n  }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) }))))) (expression_statement "FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);" (call_expression "FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11)" identifier (argument_list "(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11)" ( (pointer_expression "*(undefined4 *)(iVar23 + 0xd8)" * (cast_expression "(undefined4 *)(iVar23 + 0xd8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd8)" ( (binary_expression "iVar23 + 0xd8" identifier + number_literal) )))) , identifier , (pointer_expression "*(undefined1 *)(iVar23 + 0xb)" * (cast_expression "(undefined1 *)(iVar23 + 0xb)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xb)" ( (binary_expression "iVar23 + 0xb" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(iVar23 + 0x98)" * (cast_expression "(undefined4 *)(iVar23 + 0x98)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x98)" ( (binary_expression "iVar23 + 0x98" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "*(undefined4 *)(iVar23 + 0xd8) = 0;" (assignment_expression "*(undefined4 *)(iVar23 + 0xd8) = 0" (pointer_expression "*(undefined4 *)(iVar23 + 0xd8)" * (cast_expression "(undefined4 *)(iVar23 + 0xd8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd8)" ( (binary_expression "iVar23 + 0xd8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" ( (binary_expression "*(int *)(pcVar3 + 0xb7878) + 0x6cb0" (pointer_expression "*(int *)(pcVar3 + 0xb7878)" * (cast_expression "(int *)(pcVar3 + 0xb7878)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7878)" ( (binary_expression "pcVar3 + 0xb7878" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23)" ( identifier ))) ;) (if_statement "if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" if (parenthesized_expression "(*(char *)(iVar23 + 0xf) == '\0')" ( (binary_expression "*(char *)(iVar23 + 0xf) == '\0'" (pointer_expression "*(char *)(iVar23 + 0xf)" * (cast_expression "(char *)(iVar23 + 0xf)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xf)" ( (binary_expression "iVar23 + 0xf" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" { (if_statement "if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }" if (parenthesized_expression "(**(int **)(iVar23 + 0x40) != 0)" ( (binary_expression "**(int **)(iVar23 + 0x40) != 0" (pointer_expression "**(int **)(iVar23 + 0x40)" * (pointer_expression "*(int **)(iVar23 + 0x40)" * (cast_expression "(int **)(iVar23 + 0x40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + 0x40)" ( (binary_expression "iVar23 + 0x40" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }" { (expression_statement "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();" (assignment_expression "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" identifier = (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x47e4" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( )))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x447c)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x447c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23,uVar11)" ( identifier , identifier ))) ;) })) (expression_statement "FUN_000c96c0(iVar23);" (call_expression "FUN_000c96c0(iVar23)" identifier (argument_list "(iVar23)" ( identifier ))) ;) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" else (compound_statement "{\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" ( (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x2314" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" * (cast_expression "(int *)(pcVar3 + 0xb78c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb78c0)" ( (binary_expression "pcVar3 + 0xb78c0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23)" ( identifier ))) ;) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) }))) (expression_statement "(*(code *)(iVar18 + 0xd98))();" (call_expression "(*(code *)(iVar18 + 0xd98))()" (parenthesized_expression "(*(code *)(iVar18 + 0xd98))" ( (pointer_expression "*(code *)(iVar18 + 0xd98)" * (cast_expression "(code *)(iVar18 + 0xd98)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0xd98)" ( (binary_expression "iVar18 + 0xd98" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));" (call_expression "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40))" (parenthesized_expression "(*(code *)(iVar18 + 0x968))" ( (pointer_expression "*(code *)(iVar18 + 0x968)" * (cast_expression "(code *)(iVar18 + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0x968)" ( (binary_expression "iVar18 + 0x968" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(iVar23 + 0x40))" ( (pointer_expression "*(undefined4 *)(iVar23 + 0x40)" * (cast_expression "(undefined4 *)(iVar23 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x40)" ( (binary_expression "iVar23 + 0x40" identifier + number_literal) )))) ))) ;) (expression_statement "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));" (call_expression "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c))" (parenthesized_expression "(*(code *)(iVar18 + 0x968))" ( (pointer_expression "*(code *)(iVar18 + 0x968)" * (cast_expression "(code *)(iVar18 + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0x968)" ( (binary_expression "iVar18 + 0x968" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(iVar23 + 0x3c))" ( (pointer_expression "*(undefined4 *)(iVar23 + 0x3c)" * (cast_expression "(undefined4 *)(iVar23 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x3c)" ( (binary_expression "iVar23 + 0x3c" identifier + number_literal) )))) ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" ( (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x52c" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" * (cast_expression "(int *)(pcVar3 + 0xb78c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb78c0)" ( (binary_expression "pcVar3 + 0xb78c0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar17)" ( identifier ))) ;) (expression_statement "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));" (call_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c))" (parenthesized_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))" ( (pointer_expression "**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" * (pointer_expression "*(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" * (cast_expression "(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7604) + -0x1adc" (pointer_expression "*(int *)(pcVar3 + 0xb7604)" * (cast_expression "(int *)(pcVar3 + 0xb7604)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7604)" ( (binary_expression "pcVar3 + 0xb7604" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c))" ( (pointer_expression "*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c)" * (cast_expression "(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar23 + 0xd4) + 0x2c)" ( (binary_expression "*(int *)(iVar23 + 0xd4) + 0x2c" (pointer_expression "*(int *)(iVar23 + 0xd4)" * (cast_expression "(int *)(iVar23 + 0xd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd4)" ( (binary_expression "iVar23 + 0xd4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "(**(code **)(pcVar3 + 0xb7634))(iVar23);" (call_expression "(**(code **)(pcVar3 + 0xb7634))(iVar23)" (parenthesized_expression "(**(code **)(pcVar3 + 0xb7634))" ( (pointer_expression "**(code **)(pcVar3 + 0xb7634)" * (pointer_expression "*(code **)(pcVar3 + 0xb7634)" * (cast_expression "(code **)(pcVar3 + 0xb7634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7634)" ( (binary_expression "pcVar3 + 0xb7634" identifier + number_literal) ))))) )) (argument_list "(iVar23)" ( identifier ))) ;) (return_statement "return (code *******)0x0;" return (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) ;) })))
(translation_unit "/* WARNING: Type propagation algorithm not settling */\n\nint sqlite3_backup_step(sqlite3_backup *p,int nPage)\n\n{\n  u8 uVar1;\n  BtShared *pBVar2;\n  code *pcVar3;\n  code *pcVar4;\n  Pager *pPVar5;\n  sqlite3 *psVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  BtShared *pBVar12;\n  uint uVar13;\n  sqlite3_file *psVar14;\n  int extraout_v1;\n  undefined2 *puVar15;\n  int *piVar16;\n  u8 *zBuf;\n  Btree *pBVar17;\n  sqlite3_mutex *psVar18;\n  sqlite3 *psVar19;\n  Wal *pWal;\n  u32 **ppuVar20;\n  PgHdr *pPVar21;\n  sqlite3 *in_a2;\n  int iVar22;\n  sqlite3 *in_a3;\n  sqlite3 *psVar23;\n  sqlite3 *unaff_s2;\n  u8 *puVar24;\n  sqlite3 *unaff_s3;\n  sqlite3 *unaff_s5;\n  sqlite3 *unaff_s6;\n  code *unaff_s7;\n  undefined *puVar25;\n  sqlite3 *unaff_s8;\n  int iVar26;\n  sqlite3 *psVar27;\n  sqlite3 *psVar28;\n  int iStack_1d8;\n  Pager *pPStack_1d4;\n  sqlite3 *psStack_1cc;\n  sqlite3 *psStack_1c8;\n  sqlite3 *psStack_1c4;\n  sqlite3 *psStack_1c0;\n  sqlite3 *psStack_1bc;\n  sqlite3 *psStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  sqlite3 *psStack_18c;\n  sqlite3 *psStack_188;\n  sqlite3 *psStack_184;\n  sqlite3 *psStack_180;\n  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_17c;\n  sqlite3 *psStack_178;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_174;\n  sqlite3 *psStack_170;\n  sqlite3 *psStack_16c;\n  sqlite3 *psStack_168;\n  undefined4 *puStack_164;\n  sqlite3_mutex *psStack_160;\n  sqlite3 *psStack_15c;\n  sqlite3 *psStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  Vdbe **ppVStack_148;\n  code *pcStack_144;\n  sqlite3 *psStack_140;\n  sqlite3 *psStack_13c;\n  undefined4 *puStack_138;\n  sqlite3 *psStack_134;\n  int iStack_130;\n  sqlite3_vfs *psStack_12c;\n  undefined8 uStack_128;\n  Vdbe *pVStack_120;\n  Vdbe *pVStack_11c;\n  Db *pDStack_118;\n  u32 auStack_114 [26];\n  Wal *pWStack_ac;\n  sqlite3_backup *psStack_a8;\n  sqlite3 *psStack_a4;\n  sqlite3 *psStack_a0;\n  sqlite3 *psStack_9c;\n  sqlite3 *psStack_98;\n  sqlite3 *psStack_94;\n  sqlite3 *psStack_90;\n  code *pcStack_8c;\n  sqlite3 *psStack_88;\n  code *pcStack_84;\n  sqlite3 *psStack_78;\n  sqlite3 *psStack_70;\n  sqlite3 *psStack_6c;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_64;\n  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_60;\n  sqlite3 *psStack_5c;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_50;\n  Pager *pPStack_4c;\n  sqlite3 *psStack_40;\n  DbPage *pSrcPg;\n  sqlite3 *psStack_34;\n  sqlite3_mutex *psStack_2c;\n  \n  psStack_2c = *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc;\n  psVar27 = (sqlite3 *)nPage;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pSrcDb->mutex);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(p->pSrc);\n  if (p->pDestDb == (sqlite3 *)0x0) {\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;\n    pBVar17 = p->pSrc;\n    paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n    pPStack_4c = p->pDest->pBt->pPager;\nLAB_000d69a8:\n    in_a2 = (sqlite3 *)0x0;\n    if (pBVar17->inTrans == '\0') {\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }\n    else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }\n    pBVar2 = pBVar17->pBt;\n    psStack_5c = (sqlite3 *)pBVar2->pageSize;\n    pBVar12 = p->pDest->pBt;\n    psStack_40 = (sqlite3 *)pBVar12->pageSize;\n    uVar1 = pBVar12->pPager->journalMode;\n    if (uVar1 == '\x05') {\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }\n    else {\n      psVar23 = (sqlite3 *)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n    unaff_s5 = (sqlite3 *)pBVar2->nPage;\n    unaff_s8 = (sqlite3 *)&pSrcPg;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));\n        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }\n    if (psVar23 == (sqlite3 *)0x0) {\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    p->rc = (int)psVar23;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }\n  }\n  if (p->pDestDb != (sqlite3 *)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(p->pSrc);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pSrcDb->mutex);\n  if (psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc) {\n    return (int)psVar23;\n  }\n  pcVar3 = sqlite3WalCheckpoint;\n  psVar18 = psStack_2c;\n  puVar25 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar25 + 0xc05d0;\n  psStack_188 = psStack_70;\n  p_Stack_174 = p_Stack_64;\n  paStack_17c = paStack_60;\n  psStack_178 = psStack_5c;\n  pWStack_ac = (Wal *)**(undefined4 **)(puVar25 + 0xb8b7c);\n  iStack_130 = 0;\n  psStack_18c = in_a3;\n  psStack_180 = psVar27;\n  psStack_a8 = p;\n  psStack_a4 = psVar23;\n  psStack_a0 = unaff_s2;\n  psStack_9c = unaff_s3;\n  psStack_98 = (sqlite3 *)nPage;\n  psStack_94 = unaff_s5;\n  psStack_90 = unaff_s6;\n  pcStack_8c = unaff_s7;\n  psStack_88 = unaff_s8;\n  pcStack_84 = pcVar3;\n  psStack_78 = in_a2;\n  if (psVar18[1].mutex.__size[0x16] == '\0') {\n    in_a2 = (sqlite3 *)0x1;\n    psVar27 = (sqlite3 *)0x1;\n    psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();\n    psVar6 = psVar28;\n    if (psVar28 == (sqlite3 *)0x0) {\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }\n  }\n  else {\n    psVar6 = (sqlite3 *)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)) {\n    return (int)psVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = sqlite3WalClose;\n  pWal = pWStack_ac;\n  (*pcVar3)();\n  puVar24 = uStack_1a0._0_4_;\n  pPStack_1d4 = (Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c);\n  psStack_1cc = (sqlite3 *)p;\n  psStack_1c8 = psVar23;\n  psStack_1c4 = unaff_s2;\n  psStack_1c0 = unaff_s3;\n  psStack_1bc = (sqlite3 *)nPage;\n  psStack_1b8 = unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pWal == (Wal *)0x0) {\n    iVar26 = 0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == (u8 *)0x0) {\n    iVar26 = 0;\nLAB_000d82a0:\n    psVar27 = (sqlite3 *)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n    ppuVar20 = pWal->apWiData;\n  }\n  else {\n    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }\n    iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(ppuVar20);\n  (*pcVar4)(pWal);\nLAB_000d8300:\n  if (pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)) {\n    return iVar26;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  pPVar5 = pPStack_1d4;\n  (*pcVar3)();\n  puVar24 = (u8 *)pPVar5->pTmpSpace;\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  pPVar21 = pPVar5->pMmapFreelist;\n  if (pPVar21 != (PgHdr *)0x0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    } while (pPVar21 != (PgHdr *)0x0);\n  }\n  pPVar5->exclusiveMode = '\0';\n  if (psVar27 == (sqlite3 *)0x0) {\n    zBuf = (u8 *)0x0;\n  }\n  else if ((psVar27->flags & 0x800) == 0) {\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }\n  else {\n    zBuf = (u8 *)0x0;\n  }\n  sqlite3WalClose(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf);\n  pPVar5->pWal = (Wal *)0x0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(pPVar5);\n  if (pPVar5->memDb == '\0') {\n    if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }\n    pagerUnlockAndRollback(pPVar5);\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar26 + 0xd98))();\n  iVar26 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar26 + 0x968))(pPVar5->jfd);\n  (*(code *)(iVar26 + 0x968))(pPVar5->fd);\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(puVar24);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))(pPVar5->pPCache->pCache);\n  (**(code **)(pcVar3 + 0xb7634))(pPVar5);\n  return 0;\n}\n\n" comment (function_definition "int sqlite3_backup_step(sqlite3_backup *p,int nPage)\n\n{\n  u8 uVar1;\n  BtShared *pBVar2;\n  code *pcVar3;\n  code *pcVar4;\n  Pager *pPVar5;\n  sqlite3 *psVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  BtShared *pBVar12;\n  uint uVar13;\n  sqlite3_file *psVar14;\n  int extraout_v1;\n  undefined2 *puVar15;\n  int *piVar16;\n  u8 *zBuf;\n  Btree *pBVar17;\n  sqlite3_mutex *psVar18;\n  sqlite3 *psVar19;\n  Wal *pWal;\n  u32 **ppuVar20;\n  PgHdr *pPVar21;\n  sqlite3 *in_a2;\n  int iVar22;\n  sqlite3 *in_a3;\n  sqlite3 *psVar23;\n  sqlite3 *unaff_s2;\n  u8 *puVar24;\n  sqlite3 *unaff_s3;\n  sqlite3 *unaff_s5;\n  sqlite3 *unaff_s6;\n  code *unaff_s7;\n  undefined *puVar25;\n  sqlite3 *unaff_s8;\n  int iVar26;\n  sqlite3 *psVar27;\n  sqlite3 *psVar28;\n  int iStack_1d8;\n  Pager *pPStack_1d4;\n  sqlite3 *psStack_1cc;\n  sqlite3 *psStack_1c8;\n  sqlite3 *psStack_1c4;\n  sqlite3 *psStack_1c0;\n  sqlite3 *psStack_1bc;\n  sqlite3 *psStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  sqlite3 *psStack_18c;\n  sqlite3 *psStack_188;\n  sqlite3 *psStack_184;\n  sqlite3 *psStack_180;\n  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_17c;\n  sqlite3 *psStack_178;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_174;\n  sqlite3 *psStack_170;\n  sqlite3 *psStack_16c;\n  sqlite3 *psStack_168;\n  undefined4 *puStack_164;\n  sqlite3_mutex *psStack_160;\n  sqlite3 *psStack_15c;\n  sqlite3 *psStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  Vdbe **ppVStack_148;\n  code *pcStack_144;\n  sqlite3 *psStack_140;\n  sqlite3 *psStack_13c;\n  undefined4 *puStack_138;\n  sqlite3 *psStack_134;\n  int iStack_130;\n  sqlite3_vfs *psStack_12c;\n  undefined8 uStack_128;\n  Vdbe *pVStack_120;\n  Vdbe *pVStack_11c;\n  Db *pDStack_118;\n  u32 auStack_114 [26];\n  Wal *pWStack_ac;\n  sqlite3_backup *psStack_a8;\n  sqlite3 *psStack_a4;\n  sqlite3 *psStack_a0;\n  sqlite3 *psStack_9c;\n  sqlite3 *psStack_98;\n  sqlite3 *psStack_94;\n  sqlite3 *psStack_90;\n  code *pcStack_8c;\n  sqlite3 *psStack_88;\n  code *pcStack_84;\n  sqlite3 *psStack_78;\n  sqlite3 *psStack_70;\n  sqlite3 *psStack_6c;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_64;\n  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_60;\n  sqlite3 *psStack_5c;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_50;\n  Pager *pPStack_4c;\n  sqlite3 *psStack_40;\n  DbPage *pSrcPg;\n  sqlite3 *psStack_34;\n  sqlite3_mutex *psStack_2c;\n  \n  psStack_2c = *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc;\n  psVar27 = (sqlite3 *)nPage;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pSrcDb->mutex);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(p->pSrc);\n  if (p->pDestDb == (sqlite3 *)0x0) {\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;\n    pBVar17 = p->pSrc;\n    paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n    pPStack_4c = p->pDest->pBt->pPager;\nLAB_000d69a8:\n    in_a2 = (sqlite3 *)0x0;\n    if (pBVar17->inTrans == '\0') {\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }\n    else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }\n    pBVar2 = pBVar17->pBt;\n    psStack_5c = (sqlite3 *)pBVar2->pageSize;\n    pBVar12 = p->pDest->pBt;\n    psStack_40 = (sqlite3 *)pBVar12->pageSize;\n    uVar1 = pBVar12->pPager->journalMode;\n    if (uVar1 == '\x05') {\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }\n    else {\n      psVar23 = (sqlite3 *)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n    unaff_s5 = (sqlite3 *)pBVar2->nPage;\n    unaff_s8 = (sqlite3 *)&pSrcPg;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));\n        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }\n    if (psVar23 == (sqlite3 *)0x0) {\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    p->rc = (int)psVar23;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }\n  }\n  if (p->pDestDb != (sqlite3 *)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(p->pSrc);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pSrcDb->mutex);\n  if (psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc) {\n    return (int)psVar23;\n  }\n  pcVar3 = sqlite3WalCheckpoint;\n  psVar18 = psStack_2c;\n  puVar25 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar25 + 0xc05d0;\n  psStack_188 = psStack_70;\n  p_Stack_174 = p_Stack_64;\n  paStack_17c = paStack_60;\n  psStack_178 = psStack_5c;\n  pWStack_ac = (Wal *)**(undefined4 **)(puVar25 + 0xb8b7c);\n  iStack_130 = 0;\n  psStack_18c = in_a3;\n  psStack_180 = psVar27;\n  psStack_a8 = p;\n  psStack_a4 = psVar23;\n  psStack_a0 = unaff_s2;\n  psStack_9c = unaff_s3;\n  psStack_98 = (sqlite3 *)nPage;\n  psStack_94 = unaff_s5;\n  psStack_90 = unaff_s6;\n  pcStack_8c = unaff_s7;\n  psStack_88 = unaff_s8;\n  pcStack_84 = pcVar3;\n  psStack_78 = in_a2;\n  if (psVar18[1].mutex.__size[0x16] == '\0') {\n    in_a2 = (sqlite3 *)0x1;\n    psVar27 = (sqlite3 *)0x1;\n    psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();\n    psVar6 = psVar28;\n    if (psVar28 == (sqlite3 *)0x0) {\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }\n  }\n  else {\n    psVar6 = (sqlite3 *)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)) {\n    return (int)psVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = sqlite3WalClose;\n  pWal = pWStack_ac;\n  (*pcVar3)();\n  puVar24 = uStack_1a0._0_4_;\n  pPStack_1d4 = (Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c);\n  psStack_1cc = (sqlite3 *)p;\n  psStack_1c8 = psVar23;\n  psStack_1c4 = unaff_s2;\n  psStack_1c0 = unaff_s3;\n  psStack_1bc = (sqlite3 *)nPage;\n  psStack_1b8 = unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pWal == (Wal *)0x0) {\n    iVar26 = 0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == (u8 *)0x0) {\n    iVar26 = 0;\nLAB_000d82a0:\n    psVar27 = (sqlite3 *)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n    ppuVar20 = pWal->apWiData;\n  }\n  else {\n    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }\n    iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(ppuVar20);\n  (*pcVar4)(pWal);\nLAB_000d8300:\n  if (pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)) {\n    return iVar26;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  pPVar5 = pPStack_1d4;\n  (*pcVar3)();\n  puVar24 = (u8 *)pPVar5->pTmpSpace;\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  pPVar21 = pPVar5->pMmapFreelist;\n  if (pPVar21 != (PgHdr *)0x0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    } while (pPVar21 != (PgHdr *)0x0);\n  }\n  pPVar5->exclusiveMode = '\0';\n  if (psVar27 == (sqlite3 *)0x0) {\n    zBuf = (u8 *)0x0;\n  }\n  else if ((psVar27->flags & 0x800) == 0) {\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }\n  else {\n    zBuf = (u8 *)0x0;\n  }\n  sqlite3WalClose(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf);\n  pPVar5->pWal = (Wal *)0x0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(pPVar5);\n  if (pPVar5->memDb == '\0') {\n    if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }\n    pagerUnlockAndRollback(pPVar5);\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar26 + 0xd98))();\n  iVar26 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar26 + 0x968))(pPVar5->jfd);\n  (*(code *)(iVar26 + 0x968))(pPVar5->fd);\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(puVar24);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))(pPVar5->pPCache->pCache);\n  (**(code **)(pcVar3 + 0xb7634))(pPVar5);\n  return 0;\n}" primitive_type (function_declarator "sqlite3_backup_step(sqlite3_backup *p,int nPage)" identifier (parameter_list "(sqlite3_backup *p,int nPage)" ( (parameter_declaration "sqlite3_backup *p" type_identifier (pointer_declarator "*p" * identifier)) , (parameter_declaration "int nPage" primitive_type identifier) ))) (compound_statement "{\n  u8 uVar1;\n  BtShared *pBVar2;\n  code *pcVar3;\n  code *pcVar4;\n  Pager *pPVar5;\n  sqlite3 *psVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  BtShared *pBVar12;\n  uint uVar13;\n  sqlite3_file *psVar14;\n  int extraout_v1;\n  undefined2 *puVar15;\n  int *piVar16;\n  u8 *zBuf;\n  Btree *pBVar17;\n  sqlite3_mutex *psVar18;\n  sqlite3 *psVar19;\n  Wal *pWal;\n  u32 **ppuVar20;\n  PgHdr *pPVar21;\n  sqlite3 *in_a2;\n  int iVar22;\n  sqlite3 *in_a3;\n  sqlite3 *psVar23;\n  sqlite3 *unaff_s2;\n  u8 *puVar24;\n  sqlite3 *unaff_s3;\n  sqlite3 *unaff_s5;\n  sqlite3 *unaff_s6;\n  code *unaff_s7;\n  undefined *puVar25;\n  sqlite3 *unaff_s8;\n  int iVar26;\n  sqlite3 *psVar27;\n  sqlite3 *psVar28;\n  int iStack_1d8;\n  Pager *pPStack_1d4;\n  sqlite3 *psStack_1cc;\n  sqlite3 *psStack_1c8;\n  sqlite3 *psStack_1c4;\n  sqlite3 *psStack_1c0;\n  sqlite3 *psStack_1bc;\n  sqlite3 *psStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  sqlite3 *psStack_18c;\n  sqlite3 *psStack_188;\n  sqlite3 *psStack_184;\n  sqlite3 *psStack_180;\n  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_17c;\n  sqlite3 *psStack_178;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_174;\n  sqlite3 *psStack_170;\n  sqlite3 *psStack_16c;\n  sqlite3 *psStack_168;\n  undefined4 *puStack_164;\n  sqlite3_mutex *psStack_160;\n  sqlite3 *psStack_15c;\n  sqlite3 *psStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  Vdbe **ppVStack_148;\n  code *pcStack_144;\n  sqlite3 *psStack_140;\n  sqlite3 *psStack_13c;\n  undefined4 *puStack_138;\n  sqlite3 *psStack_134;\n  int iStack_130;\n  sqlite3_vfs *psStack_12c;\n  undefined8 uStack_128;\n  Vdbe *pVStack_120;\n  Vdbe *pVStack_11c;\n  Db *pDStack_118;\n  u32 auStack_114 [26];\n  Wal *pWStack_ac;\n  sqlite3_backup *psStack_a8;\n  sqlite3 *psStack_a4;\n  sqlite3 *psStack_a0;\n  sqlite3 *psStack_9c;\n  sqlite3 *psStack_98;\n  sqlite3 *psStack_94;\n  sqlite3 *psStack_90;\n  code *pcStack_8c;\n  sqlite3 *psStack_88;\n  code *pcStack_84;\n  sqlite3 *psStack_78;\n  sqlite3 *psStack_70;\n  sqlite3 *psStack_6c;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_64;\n  anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_60;\n  sqlite3 *psStack_5c;\n  _func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_50;\n  Pager *pPStack_4c;\n  sqlite3 *psStack_40;\n  DbPage *pSrcPg;\n  sqlite3 *psStack_34;\n  sqlite3_mutex *psStack_2c;\n  \n  psStack_2c = *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc;\n  psVar27 = (sqlite3 *)nPage;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pSrcDb->mutex);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(p->pSrc);\n  if (p->pDestDb == (sqlite3 *)0x0) {\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;\n    pBVar17 = p->pSrc;\n    paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n    pPStack_4c = p->pDest->pBt->pPager;\nLAB_000d69a8:\n    in_a2 = (sqlite3 *)0x0;\n    if (pBVar17->inTrans == '\0') {\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }\n    else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }\n    pBVar2 = pBVar17->pBt;\n    psStack_5c = (sqlite3 *)pBVar2->pageSize;\n    pBVar12 = p->pDest->pBt;\n    psStack_40 = (sqlite3 *)pBVar12->pageSize;\n    uVar1 = pBVar12->pPager->journalMode;\n    if (uVar1 == '\x05') {\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }\n    else {\n      psVar23 = (sqlite3 *)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n    unaff_s5 = (sqlite3 *)pBVar2->nPage;\n    unaff_s8 = (sqlite3 *)&pSrcPg;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));\n        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }\n    if (psVar23 == (sqlite3 *)0x0) {\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    p->rc = (int)psVar23;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }\n  }\n  if (p->pDestDb != (sqlite3 *)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(p->pSrc);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pSrcDb->mutex);\n  if (psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc) {\n    return (int)psVar23;\n  }\n  pcVar3 = sqlite3WalCheckpoint;\n  psVar18 = psStack_2c;\n  puVar25 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar25 + 0xc05d0;\n  psStack_188 = psStack_70;\n  p_Stack_174 = p_Stack_64;\n  paStack_17c = paStack_60;\n  psStack_178 = psStack_5c;\n  pWStack_ac = (Wal *)**(undefined4 **)(puVar25 + 0xb8b7c);\n  iStack_130 = 0;\n  psStack_18c = in_a3;\n  psStack_180 = psVar27;\n  psStack_a8 = p;\n  psStack_a4 = psVar23;\n  psStack_a0 = unaff_s2;\n  psStack_9c = unaff_s3;\n  psStack_98 = (sqlite3 *)nPage;\n  psStack_94 = unaff_s5;\n  psStack_90 = unaff_s6;\n  pcStack_8c = unaff_s7;\n  psStack_88 = unaff_s8;\n  pcStack_84 = pcVar3;\n  psStack_78 = in_a2;\n  if (psVar18[1].mutex.__size[0x16] == '\0') {\n    in_a2 = (sqlite3 *)0x1;\n    psVar27 = (sqlite3 *)0x1;\n    psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();\n    psVar6 = psVar28;\n    if (psVar28 == (sqlite3 *)0x0) {\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }\n  }\n  else {\n    psVar6 = (sqlite3 *)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)) {\n    return (int)psVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = sqlite3WalClose;\n  pWal = pWStack_ac;\n  (*pcVar3)();\n  puVar24 = uStack_1a0._0_4_;\n  pPStack_1d4 = (Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c);\n  psStack_1cc = (sqlite3 *)p;\n  psStack_1c8 = psVar23;\n  psStack_1c4 = unaff_s2;\n  psStack_1c0 = unaff_s3;\n  psStack_1bc = (sqlite3 *)nPage;\n  psStack_1b8 = unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pWal == (Wal *)0x0) {\n    iVar26 = 0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == (u8 *)0x0) {\n    iVar26 = 0;\nLAB_000d82a0:\n    psVar27 = (sqlite3 *)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n    ppuVar20 = pWal->apWiData;\n  }\n  else {\n    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }\n    iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(ppuVar20);\n  (*pcVar4)(pWal);\nLAB_000d8300:\n  if (pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)) {\n    return iVar26;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  pPVar5 = pPStack_1d4;\n  (*pcVar3)();\n  puVar24 = (u8 *)pPVar5->pTmpSpace;\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  pPVar21 = pPVar5->pMmapFreelist;\n  if (pPVar21 != (PgHdr *)0x0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    } while (pPVar21 != (PgHdr *)0x0);\n  }\n  pPVar5->exclusiveMode = '\0';\n  if (psVar27 == (sqlite3 *)0x0) {\n    zBuf = (u8 *)0x0;\n  }\n  else if ((psVar27->flags & 0x800) == 0) {\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }\n  else {\n    zBuf = (u8 *)0x0;\n  }\n  sqlite3WalClose(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf);\n  pPVar5->pWal = (Wal *)0x0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(pPVar5);\n  if (pPVar5->memDb == '\0') {\n    if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }\n    pagerUnlockAndRollback(pPVar5);\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar26 + 0xd98))();\n  iVar26 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar26 + 0x968))(pPVar5->jfd);\n  (*(code *)(iVar26 + 0x968))(pPVar5->fd);\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(puVar24);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))(pPVar5->pPCache->pCache);\n  (**(code **)(pcVar3 + 0xb7634))(pPVar5);\n  return 0;\n}" { (declaration "u8 uVar1;" type_identifier identifier ;) (declaration "BtShared *pBVar2;" type_identifier (pointer_declarator "*pBVar2" * identifier) ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "Pager *pPVar5;" type_identifier (pointer_declarator "*pPVar5" * identifier) ;) (declaration "sqlite3 *psVar6;" type_identifier (pointer_declarator "*psVar6" * identifier) ;) (declaration "code *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined2 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "BtShared *pBVar12;" type_identifier (pointer_declarator "*pBVar12" * identifier) ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "sqlite3_file *psVar14;" type_identifier (pointer_declarator "*psVar14" * identifier) ;) (declaration "int extraout_v1;" primitive_type identifier ;) (declaration "undefined2 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "u8 *zBuf;" type_identifier (pointer_declarator "*zBuf" * identifier) ;) (declaration "Btree *pBVar17;" type_identifier (pointer_declarator "*pBVar17" * identifier) ;) (declaration "sqlite3_mutex *psVar18;" type_identifier (pointer_declarator "*psVar18" * identifier) ;) (declaration "sqlite3 *psVar19;" type_identifier (pointer_declarator "*psVar19" * identifier) ;) (declaration "Wal *pWal;" type_identifier (pointer_declarator "*pWal" * identifier) ;) (declaration "u32 **ppuVar20;" type_identifier (pointer_declarator "**ppuVar20" * (pointer_declarator "*ppuVar20" * identifier)) ;) (declaration "PgHdr *pPVar21;" type_identifier (pointer_declarator "*pPVar21" * identifier) ;) (declaration "sqlite3 *in_a2;" type_identifier (pointer_declarator "*in_a2" * identifier) ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "sqlite3 *in_a3;" type_identifier (pointer_declarator "*in_a3" * identifier) ;) (declaration "sqlite3 *psVar23;" type_identifier (pointer_declarator "*psVar23" * identifier) ;) (declaration "sqlite3 *unaff_s2;" type_identifier (pointer_declarator "*unaff_s2" * identifier) ;) (declaration "u8 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "sqlite3 *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "sqlite3 *unaff_s5;" type_identifier (pointer_declarator "*unaff_s5" * identifier) ;) (declaration "sqlite3 *unaff_s6;" type_identifier (pointer_declarator "*unaff_s6" * identifier) ;) (declaration "code *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "undefined *puVar25;" type_identifier (pointer_declarator "*puVar25" * identifier) ;) (declaration "sqlite3 *unaff_s8;" type_identifier (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "int iVar26;" primitive_type identifier ;) (declaration "sqlite3 *psVar27;" type_identifier (pointer_declarator "*psVar27" * identifier) ;) (declaration "sqlite3 *psVar28;" type_identifier (pointer_declarator "*psVar28" * identifier) ;) (declaration "int iStack_1d8;" primitive_type identifier ;) (declaration "Pager *pPStack_1d4;" type_identifier (pointer_declarator "*pPStack_1d4" * identifier) ;) (declaration "sqlite3 *psStack_1cc;" type_identifier (pointer_declarator "*psStack_1cc" * identifier) ;) (declaration "sqlite3 *psStack_1c8;" type_identifier (pointer_declarator "*psStack_1c8" * identifier) ;) (declaration "sqlite3 *psStack_1c4;" type_identifier (pointer_declarator "*psStack_1c4" * identifier) ;) (declaration "sqlite3 *psStack_1c0;" type_identifier (pointer_declarator "*psStack_1c0" * identifier) ;) (declaration "sqlite3 *psStack_1bc;" type_identifier (pointer_declarator "*psStack_1bc" * identifier) ;) (declaration "sqlite3 *psStack_1b8;" type_identifier (pointer_declarator "*psStack_1b8" * identifier) ;) (declaration "code *pcStack_1b4;" type_identifier (pointer_declarator "*pcStack_1b4" * identifier) ;) (declaration "undefined8 uStack_1a0;" type_identifier identifier ;) (declaration "undefined *puStack_198;" type_identifier (pointer_declarator "*puStack_198" * identifier) ;) (declaration "sqlite3 *psStack_18c;" type_identifier (pointer_declarator "*psStack_18c" * identifier) ;) (declaration "sqlite3 *psStack_188;" type_identifier (pointer_declarator "*psStack_188" * identifier) ;) (declaration "sqlite3 *psStack_184;" type_identifier (pointer_declarator "*psStack_184" * identifier) ;) (declaration "sqlite3 *psStack_180;" type_identifier (pointer_declarator "*psStack_180" * identifier) ;) (declaration "anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_17c;" type_identifier (pointer_declarator "*paStack_17c" * identifier) ;) (declaration "sqlite3 *psStack_178;" type_identifier (pointer_declarator "*psStack_178" * identifier) ;) (declaration "_func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_174;" type_identifier (pointer_declarator "*p_Stack_174" * identifier) ;) (declaration "sqlite3 *psStack_170;" type_identifier (pointer_declarator "*psStack_170" * identifier) ;) (declaration "sqlite3 *psStack_16c;" type_identifier (pointer_declarator "*psStack_16c" * identifier) ;) (declaration "sqlite3 *psStack_168;" type_identifier (pointer_declarator "*psStack_168" * identifier) ;) (declaration "undefined4 *puStack_164;" type_identifier (pointer_declarator "*puStack_164" * identifier) ;) (declaration "sqlite3_mutex *psStack_160;" type_identifier (pointer_declarator "*psStack_160" * identifier) ;) (declaration "sqlite3 *psStack_15c;" type_identifier (pointer_declarator "*psStack_15c" * identifier) ;) (declaration "sqlite3 *psStack_158;" type_identifier (pointer_declarator "*psStack_158" * identifier) ;) (declaration "int iStack_154;" primitive_type identifier ;) (declaration "undefined2 *puStack_150;" type_identifier (pointer_declarator "*puStack_150" * identifier) ;) (declaration "code *pcStack_14c;" type_identifier (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "Vdbe **ppVStack_148;" type_identifier (pointer_declarator "**ppVStack_148" * (pointer_declarator "*ppVStack_148" * identifier)) ;) (declaration "code *pcStack_144;" type_identifier (pointer_declarator "*pcStack_144" * identifier) ;) (declaration "sqlite3 *psStack_140;" type_identifier (pointer_declarator "*psStack_140" * identifier) ;) (declaration "sqlite3 *psStack_13c;" type_identifier (pointer_declarator "*psStack_13c" * identifier) ;) (declaration "undefined4 *puStack_138;" type_identifier (pointer_declarator "*puStack_138" * identifier) ;) (declaration "sqlite3 *psStack_134;" type_identifier (pointer_declarator "*psStack_134" * identifier) ;) (declaration "int iStack_130;" primitive_type identifier ;) (declaration "sqlite3_vfs *psStack_12c;" type_identifier (pointer_declarator "*psStack_12c" * identifier) ;) (declaration "undefined8 uStack_128;" type_identifier identifier ;) (declaration "Vdbe *pVStack_120;" type_identifier (pointer_declarator "*pVStack_120" * identifier) ;) (declaration "Vdbe *pVStack_11c;" type_identifier (pointer_declarator "*pVStack_11c" * identifier) ;) (declaration "Db *pDStack_118;" type_identifier (pointer_declarator "*pDStack_118" * identifier) ;) (declaration "u32 auStack_114 [26];" type_identifier (array_declarator "auStack_114 [26]" identifier [ number_literal ]) ;) (declaration "Wal *pWStack_ac;" type_identifier (pointer_declarator "*pWStack_ac" * identifier) ;) (declaration "sqlite3_backup *psStack_a8;" type_identifier (pointer_declarator "*psStack_a8" * identifier) ;) (declaration "sqlite3 *psStack_a4;" type_identifier (pointer_declarator "*psStack_a4" * identifier) ;) (declaration "sqlite3 *psStack_a0;" type_identifier (pointer_declarator "*psStack_a0" * identifier) ;) (declaration "sqlite3 *psStack_9c;" type_identifier (pointer_declarator "*psStack_9c" * identifier) ;) (declaration "sqlite3 *psStack_98;" type_identifier (pointer_declarator "*psStack_98" * identifier) ;) (declaration "sqlite3 *psStack_94;" type_identifier (pointer_declarator "*psStack_94" * identifier) ;) (declaration "sqlite3 *psStack_90;" type_identifier (pointer_declarator "*psStack_90" * identifier) ;) (declaration "code *pcStack_8c;" type_identifier (pointer_declarator "*pcStack_8c" * identifier) ;) (declaration "sqlite3 *psStack_88;" type_identifier (pointer_declarator "*psStack_88" * identifier) ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "sqlite3 *psStack_78;" type_identifier (pointer_declarator "*psStack_78" * identifier) ;) (declaration "sqlite3 *psStack_70;" type_identifier (pointer_declarator "*psStack_70" * identifier) ;) (declaration "sqlite3 *psStack_6c;" type_identifier (pointer_declarator "*psStack_6c" * identifier) ;) (declaration "_func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_64;" type_identifier (pointer_declarator "*p_Stack_64" * identifier) ;) (declaration "anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *paStack_60;" type_identifier (pointer_declarator "*paStack_60" * identifier) ;) (declaration "sqlite3 *psStack_5c;" type_identifier (pointer_declarator "*psStack_5c" * identifier) ;) (declaration "_func_int_u32_void_ptr_void_ptr_void_ptr *p_Stack_50;" type_identifier (pointer_declarator "*p_Stack_50" * identifier) ;) (declaration "Pager *pPStack_4c;" type_identifier (pointer_declarator "*pPStack_4c" * identifier) ;) (declaration "sqlite3 *psStack_40;" type_identifier (pointer_declarator "*psStack_40" * identifier) ;) (declaration "DbPage *pSrcPg;" type_identifier (pointer_declarator "*pSrcPg" * identifier) ;) (declaration "sqlite3 *psStack_34;" type_identifier (pointer_declarator "*psStack_34" * identifier) ;) (declaration "sqlite3_mutex *psStack_2c;" type_identifier (pointer_declarator "*psStack_2c" * identifier) ;) (expression_statement "psStack_2c = *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc;" (assignment_expression "psStack_2c = *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc" identifier = (pointer_expression "*(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc" * (cast_expression "(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc" ( (type_descriptor "sqlite3_mutex **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "psVar27 = (sqlite3 *)nPage;" (assignment_expression "psVar27 = (sqlite3 *)nPage" identifier = (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pSrcDb->mutex);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pSrcDb->mutex)" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" * (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(p->pSrcDb->mutex)" ( (field_expression "p->pSrcDb->mutex" (field_expression "p->pSrcDb" identifier -> field_identifier) -> field_identifier) ))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(p->pSrc);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(p->pSrc)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" ( (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" * (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" ( (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" identifier + number_literal) )))) )) (argument_list "(p->pSrc)" ( (field_expression "p->pSrc" identifier -> field_identifier) ))) ;) (if_statement "if (p->pDestDb == (sqlite3 *)0x0) {\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;\n    pBVar17 = p->pSrc;\n    paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n    pPStack_4c = p->pDest->pBt->pPager;\nLAB_000d69a8:\n    in_a2 = (sqlite3 *)0x0;\n    if (pBVar17->inTrans == '\0') {\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }\n    else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }\n    pBVar2 = pBVar17->pBt;\n    psStack_5c = (sqlite3 *)pBVar2->pageSize;\n    pBVar12 = p->pDest->pBt;\n    psStack_40 = (sqlite3 *)pBVar12->pageSize;\n    uVar1 = pBVar12->pPager->journalMode;\n    if (uVar1 == '\x05') {\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }\n    else {\n      psVar23 = (sqlite3 *)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n    unaff_s5 = (sqlite3 *)pBVar2->nPage;\n    unaff_s8 = (sqlite3 *)&pSrcPg;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));\n        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }\n    if (psVar23 == (sqlite3 *)0x0) {\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    p->rc = (int)psVar23;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }\n  }" if (parenthesized_expression "(p->pDestDb == (sqlite3 *)0x0)" ( (binary_expression "p->pDestDb == (sqlite3 *)0x0" (field_expression "p->pDestDb" identifier -> field_identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;\n    pBVar17 = p->pSrc;\n    paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n    pPStack_4c = p->pDest->pBt->pPager;\nLAB_000d69a8:\n    in_a2 = (sqlite3 *)0x0;\n    if (pBVar17->inTrans == '\0') {\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }\n    else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }\n    pBVar2 = pBVar17->pBt;\n    psStack_5c = (sqlite3 *)pBVar2->pageSize;\n    pBVar12 = p->pDest->pBt;\n    psStack_40 = (sqlite3 *)pBVar12->pageSize;\n    uVar1 = pBVar12->pPager->journalMode;\n    if (uVar1 == '\x05') {\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }\n    else {\n      psVar23 = (sqlite3 *)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n    unaff_s5 = (sqlite3 *)pBVar2->nPage;\n    unaff_s8 = (sqlite3 *)&pSrcPg;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));\n        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }\n    if (psVar23 == (sqlite3 *)0x0) {\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    p->rc = (int)psVar23;\n  }" { (expression_statement "psVar23 = (sqlite3 *)p->rc;" (assignment_expression "psVar23 = (sqlite3 *)p->rc" identifier = (cast_expression "(sqlite3 *)p->rc" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->rc" identifier -> field_identifier))) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d7330;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d7330;" goto statement_identifier ;)) (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;) (expression_statement "paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;" (assignment_expression "paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager" identifier = (cast_expression "(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager" ( (type_descriptor "anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar17->pBt->pPager" (field_expression "pBVar17->pBt" identifier -> field_identifier) -> field_identifier))) ;) (expression_statement "pPStack_4c = p->pDest->pBt->pPager;" (assignment_expression "pPStack_4c = p->pDest->pBt->pPager" identifier = (field_expression "p->pDest->pBt->pPager" (field_expression "p->pDest->pBt" (field_expression "p->pDest" identifier -> field_identifier) -> field_identifier) -> field_identifier)) ;) (labeled_statement "LAB_000d69a8:\n    in_a2 = (sqlite3 *)0x0;" statement_identifier : (expression_statement "in_a2 = (sqlite3 *)0x0;" (assignment_expression "in_a2 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (if_statement "if (pBVar17->inTrans == '\0') {\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }\n    else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }" if (parenthesized_expression "(pBVar17->inTrans == '\0')" ( (binary_expression "pBVar17->inTrans == '\0'" (field_expression "pBVar17->inTrans" identifier -> field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);\n      if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\nLAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n      pBVar17 = p->pSrc;\n    }" { (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0);" (assignment_expression "psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0)" identifier = (cast_expression "(sqlite3 *)sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3BtreeBeginTrans(pBVar17,0,(int *)0x0)" identifier (argument_list "(pBVar17,0,(int *)0x0)" ( identifier , number_literal , (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))))) ;) (if_statement "if (p->bDestLocked == 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" if (parenthesized_expression "(p->bDestLocked == 0)" ( (binary_expression "p->bDestLocked == 0" (field_expression "p->bDestLocked" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" { (expression_statement "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;" (assignment_expression "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1" identifier = (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;)) (goto_statement "goto LAB_000d6aa4;" goto statement_identifier ;) })) (expression_statement "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1;" (assignment_expression "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1" identifier = (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x1" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d72d0:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;" statement_identifier : (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;))) (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;) }) (else_clause "else {\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }" else (compound_statement "{\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;\n      if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;\n      if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }\n      pBVar17 = p->pSrc;\n    }" { (expression_statement "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked;" (assignment_expression "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked" identifier = (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)p->bDestLocked" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->bDestLocked" identifier -> field_identifier))) ;) (if_statement "if (p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" if (parenthesized_expression "(p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0)" ( (binary_expression "p_Stack_50 == (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier == (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)0xffffffff;\n        psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;\n        iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);\n        if (iVar26 != 7) goto LAB_000d69c4;\n        pBVar17 = p->pSrc;\n        psVar23 = (sqlite3 *)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" { (labeled_statement "LAB_000d6aa4:\n        in_a3 = (sqlite3 *)0x0;" statement_identifier : (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "in_a2 = (sqlite3 *)0xffffffff;" (assignment_expression "in_a2 = (sqlite3 *)0xffffffff" identifier = (cast_expression "(sqlite3 *)0xffffffff" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize;" (assignment_expression "psVar27 = (sqlite3 *)p->pSrc->pBt->pageSize" identifier = (cast_expression "(sqlite3 *)p->pSrc->pBt->pageSize" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->pSrc->pBt->pageSize" (field_expression "p->pSrc->pBt" (field_expression "p->pSrc" identifier -> field_identifier) -> field_identifier) -> field_identifier))) ;) (expression_statement "iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest);" (assignment_expression "iVar26 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest)" identifier = (call_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))(p->pDest)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fc04 + 0xc6c)" * (cast_expression "(code *)(PTR_LAB_0018fc04 + 0xc6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fc04 + 0xc6c)" ( (binary_expression "PTR_LAB_0018fc04 + 0xc6c" identifier + number_literal) )))) )) (argument_list "(p->pDest)" ( (field_expression "p->pDest" identifier -> field_identifier) )))) ;) (if_statement "if (iVar26 != 7) goto LAB_000d69c4;" if (parenthesized_expression "(iVar26 != 7)" ( (binary_expression "iVar26 != 7" identifier != number_literal) )) (goto_statement "goto LAB_000d69c4;" goto statement_identifier ;)) (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;) (expression_statement "psVar23 = (sqlite3 *)&DAT_00000007;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000007" identifier = (cast_expression "(sqlite3 *)&DAT_00000007" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (goto_statement "goto LAB_000d6a48;" goto statement_identifier ;) })) (expression_statement "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;" (assignment_expression "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier = (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d69c4:\n      in_a2 = (sqlite3 *)&p->iDestSchema;" statement_identifier : (expression_statement "in_a2 = (sqlite3 *)&p->iDestSchema;" (assignment_expression "in_a2 = (sqlite3 *)&p->iDestSchema" identifier = (cast_expression "(sqlite3 *)&p->iDestSchema" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&p->iDestSchema" & (field_expression "p->iDestSchema" identifier -> field_identifier)))) ;)) (if_statement "if (p->bDestLocked == 0) {\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }" if (parenthesized_expression "(p->bDestLocked == 0)" ( (binary_expression "p->bDestLocked == 0" (field_expression "p->bDestLocked" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        psVar27 = (sqlite3 *)0x2;\n        psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);\n        if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;\n        p->bDestLocked = 1;\n      }" { (expression_statement "psVar27 = (sqlite3 *)0x2;" (assignment_expression "psVar27 = (sqlite3 *)0x2" identifier = (cast_expression "(sqlite3 *)0x2" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2);" (assignment_expression "psVar23 = (sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2)" identifier = (cast_expression "(sqlite3 *)sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3BtreeBeginTrans(p->pDest,2,(int *)in_a2)" identifier (argument_list "(p->pDest,2,(int *)in_a2)" ( (field_expression "p->pDest" identifier -> field_identifier) , number_literal , (cast_expression "(int *)in_a2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) ))))) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;)) (expression_statement "p->bDestLocked = 1;" (assignment_expression "p->bDestLocked = 1" (field_expression "p->bDestLocked" identifier -> field_identifier) = number_literal) ;) })) (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;) }))) (expression_statement "pBVar2 = pBVar17->pBt;" (assignment_expression "pBVar2 = pBVar17->pBt" identifier = (field_expression "pBVar17->pBt" identifier -> field_identifier)) ;) (expression_statement "psStack_5c = (sqlite3 *)pBVar2->pageSize;" (assignment_expression "psStack_5c = (sqlite3 *)pBVar2->pageSize" identifier = (cast_expression "(sqlite3 *)pBVar2->pageSize" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar2->pageSize" identifier -> field_identifier))) ;) (expression_statement "pBVar12 = p->pDest->pBt;" (assignment_expression "pBVar12 = p->pDest->pBt" identifier = (field_expression "p->pDest->pBt" (field_expression "p->pDest" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "psStack_40 = (sqlite3 *)pBVar12->pageSize;" (assignment_expression "psStack_40 = (sqlite3 *)pBVar12->pageSize" identifier = (cast_expression "(sqlite3 *)pBVar12->pageSize" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar12->pageSize" identifier -> field_identifier))) ;) (expression_statement "uVar1 = pBVar12->pPager->journalMode;" (assignment_expression "uVar1 = pBVar12->pPager->journalMode" identifier = (field_expression "pBVar12->pPager->journalMode" (field_expression "pBVar12->pPager" identifier -> field_identifier) -> field_identifier)) ;) (if_statement "if (uVar1 == '\x05') {\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }\n    else {\n      psVar23 = (sqlite3 *)0x0;\n    }" if (parenthesized_expression "(uVar1 == '\x05')" ( (binary_expression "uVar1 == '\x05'" identifier == (char_literal "'\x05'" ' escape_sequence ')) )) (compound_statement "{\n      psVar23 = (sqlite3 *)&DAT_00000008;\n      if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }\n    }" { (expression_statement "psVar23 = (sqlite3 *)&DAT_00000008;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000008" identifier = (cast_expression "(sqlite3 *)&DAT_00000008" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (if_statement "if (psStack_40 == psStack_5c) {\n        psVar23 = (sqlite3 *)0x0;\n      }" if (parenthesized_expression "(psStack_40 == psStack_5c)" ( (binary_expression "psStack_40 == psStack_5c" identifier == identifier) )) (compound_statement "{\n        psVar23 = (sqlite3 *)0x0;\n      }" { (expression_statement "psVar23 = (sqlite3 *)0x0;" (assignment_expression "psVar23 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }) (else_clause "else {\n      psVar23 = (sqlite3 *)0x0;\n    }" else (compound_statement "{\n      psVar23 = (sqlite3 *)0x0;\n    }" { (expression_statement "psVar23 = (sqlite3 *)0x0;" (assignment_expression "psVar23 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_000d6a70:\n    unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;" statement_identifier : (expression_statement "unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948;" (assignment_expression "unaff_s6 = (sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948" identifier = (cast_expression "(sqlite3 *)PTR_sBegin_ru_stime_tv_sec_0018f948" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "unaff_s5 = (sqlite3 *)pBVar2->nPage;" (assignment_expression "unaff_s5 = (sqlite3 *)pBVar2->nPage" identifier = (cast_expression "(sqlite3 *)pBVar2->nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar2->nPage" identifier -> field_identifier))) ;) (expression_statement "unaff_s8 = (sqlite3 *)&pSrcPg;" (assignment_expression "unaff_s8 = (sqlite3 *)&pSrcPg" identifier = (cast_expression "(sqlite3 *)&pSrcPg" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSrcPg" & identifier))) ;) (expression_statement "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8);" (assignment_expression "pcVar3 = (code *)(PTR_LAB_0018fbc8 + 0x6de8)" identifier = (cast_expression "(code *)(PTR_LAB_0018fbc8 + 0x6de8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbc8 + 0x6de8)" ( (binary_expression "PTR_LAB_0018fbc8 + 0x6de8" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (for_statement "for (unaff_s3 = (sqlite3 *)0x0; (nPage < 0 || ((int)unaff_s3 < nPage));\n        unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)) {\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }" for ( (assignment_expression "unaff_s3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ; (parenthesized_expression "(nPage < 0 || ((int)unaff_s3 < nPage))" ( (binary_expression "nPage < 0 || ((int)unaff_s3 < nPage)" (binary_expression "nPage < 0" identifier < number_literal) || (parenthesized_expression "((int)unaff_s3 < nPage)" ( (binary_expression "(int)unaff_s3 < nPage" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < identifier) ))) )) ; (assignment_expression "unaff_s3 = (sqlite3 *)((int)&unaff_s3->pVfs + 1)" identifier = (cast_expression "(sqlite3 *)((int)&unaff_s3->pVfs + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&unaff_s3->pVfs + 1)" ( (binary_expression "(int)&unaff_s3->pVfs + 1" (cast_expression "(int)&unaff_s3->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&unaff_s3->pVfs" & (field_expression "unaff_s3->pVfs" identifier -> field_identifier))) + number_literal) )))) ) (compound_statement "{\n      unaff_s2 = (sqlite3 *)p->iNext;\n      if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;\n      uVar13 = p->pSrc->pBt->pageSize;\n      if (uVar13 == 0) {\n        trap(7);\n      }\n      in_a3 = (sqlite3 *)0x2;\n      if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }\n      p->iNext = p->iNext + 1;\n    }" { (expression_statement "unaff_s2 = (sqlite3 *)p->iNext;" (assignment_expression "unaff_s2 = (sqlite3 *)p->iNext" identifier = (cast_expression "(sqlite3 *)p->iNext" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->iNext" identifier -> field_identifier))) ;) (if_statement "if (unaff_s5 < unaff_s2) {\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" if (parenthesized_expression "(unaff_s5 < unaff_s2)" ( (binary_expression "unaff_s5 < unaff_s2" identifier < identifier) )) (compound_statement "{\n        if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" { (if_statement "if (psVar23 == (sqlite3 *)0x0) {\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          p->nPagecount = (Pgno)unaff_s5;\n          p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));\n          goto LAB_000d6c9c;\n        }" { (expression_statement "p->nPagecount = (Pgno)unaff_s5;" (assignment_expression "p->nPagecount = (Pgno)unaff_s5" (field_expression "p->nPagecount" identifier -> field_identifier) = (cast_expression "(Pgno)unaff_s5" ( (type_descriptor "Pgno" type_identifier) ) identifier)) ;) (expression_statement "p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext));" (assignment_expression "p->nRemaining = (Pgno)((int)unaff_s5 + (1 - p->iNext))" (field_expression "p->nRemaining" identifier -> field_identifier) = (call_expression "(Pgno)((int)unaff_s5 + (1 - p->iNext))" (parenthesized_expression "(Pgno)" ( identifier )) (argument_list "((int)unaff_s5 + (1 - p->iNext))" ( (binary_expression "(int)unaff_s5 + (1 - p->iNext)" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(1 - p->iNext)" ( (binary_expression "1 - p->iNext" number_literal - (field_expression "p->iNext" identifier -> field_identifier)) ))) )))) ;) (goto_statement "goto LAB_000d6c9c;" goto statement_identifier ;) })) (goto_statement "goto LAB_000d6c94;" goto statement_identifier ;) })) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6c94;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6c94;" goto statement_identifier ;)) (expression_statement "uVar13 = p->pSrc->pBt->pageSize;" (assignment_expression "uVar13 = p->pSrc->pBt->pageSize" identifier = (field_expression "p->pSrc->pBt->pageSize" (field_expression "p->pSrc->pBt" (field_expression "p->pSrc" identifier -> field_identifier) -> field_identifier) -> field_identifier)) ;) (if_statement "if (uVar13 == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "in_a3 = (sqlite3 *)0x2;" (assignment_expression "in_a3 = (sqlite3 *)0x2" identifier = (cast_expression "(sqlite3 *)0x2" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)) {\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }" if (parenthesized_expression "(((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0))" ( (binary_expression "((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2) &&\n         (psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)" (parenthesized_expression "((sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2)" ( (binary_expression "(sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1) != unaff_s2" (cast_expression "(sqlite3 *)(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1)" ( (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / uVar13 + 1" (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / uVar13" (pointer_expression "*(uint *)((int)unaff_s6 + -0x1b80)" * (cast_expression "(uint *)((int)unaff_s6 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s6 + -0x1b80)" ( (binary_expression "(int)unaff_s6 + -0x1b80" (cast_expression "(int)unaff_s6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) / identifier) + number_literal) ))) != identifier) )) && (parenthesized_expression "(psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0)" ( (comma_expression "psVar27 = unaff_s2, in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0" (assignment_expression "psVar27 = unaff_s2" identifier = identifier) , (comma_expression "in_a2 = unaff_s8, psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0" (assignment_expression "in_a2 = unaff_s8" identifier = identifier) , (comma_expression "psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60),\n         psVar23 == (sqlite3 *)0x0" (assignment_expression "psVar23 = (sqlite3 *)(*unaff_s7)(paStack_60)" identifier = (cast_expression "(sqlite3 *)(*unaff_s7)(paStack_60)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*unaff_s7)(paStack_60)" (parenthesized_expression "(*unaff_s7)" ( (pointer_expression "*unaff_s7" * identifier) )) (argument_list "(paStack_60)" ( identifier ))))) , (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))))) ))) )) (compound_statement "{\n        in_a3 = (sqlite3 *)0x0;\n        in_a2 = (sqlite3 *)pSrcPg->pData;\n        psVar27 = unaff_s2;\n        psVar23 = (sqlite3 *)(*pcVar3)(p);\n        (*pcVar4)(pSrcPg);\n      }" { (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "in_a2 = (sqlite3 *)pSrcPg->pData;" (assignment_expression "in_a2 = (sqlite3 *)pSrcPg->pData" identifier = (cast_expression "(sqlite3 *)pSrcPg->pData" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pSrcPg->pData" identifier -> field_identifier))) ;) (expression_statement "psVar27 = unaff_s2;" (assignment_expression "psVar27 = unaff_s2" identifier = identifier) ;) (expression_statement "psVar23 = (sqlite3 *)(*pcVar3)(p);" (assignment_expression "psVar23 = (sqlite3 *)(*pcVar3)(p)" identifier = (cast_expression "(sqlite3 *)(*pcVar3)(p)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*pcVar3)(p)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(p)" ( identifier ))))) ;) (expression_statement "(*pcVar4)(pSrcPg);" (call_expression "(*pcVar4)(pSrcPg)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pSrcPg)" ( identifier ))) ;) })) (expression_statement "p->iNext = p->iNext + 1;" (assignment_expression "p->iNext = p->iNext + 1" (field_expression "p->iNext" identifier -> field_identifier) = (binary_expression "p->iNext + 1" (field_expression "p->iNext" identifier -> field_identifier) + number_literal)) ;) })) (if_statement "if (psVar23 == (sqlite3 *)0x0) {\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      p->nPagecount = (Pgno)unaff_s5;\n      p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));\n      if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;\n      if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" { (expression_statement "p->nPagecount = (Pgno)unaff_s5;" (assignment_expression "p->nPagecount = (Pgno)unaff_s5" (field_expression "p->nPagecount" identifier -> field_identifier) = (cast_expression "(Pgno)unaff_s5" ( (type_descriptor "Pgno" type_identifier) ) identifier)) ;) (expression_statement "p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext));" (assignment_expression "p->nRemaining = (Pgno)((int)unaff_s5 + (1 - (int)p->iNext))" (field_expression "p->nRemaining" identifier -> field_identifier) = (call_expression "(Pgno)((int)unaff_s5 + (1 - (int)p->iNext))" (parenthesized_expression "(Pgno)" ( identifier )) (argument_list "((int)unaff_s5 + (1 - (int)p->iNext))" ( (binary_expression "(int)unaff_s5 + (1 - (int)p->iNext)" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(1 - (int)p->iNext)" ( (binary_expression "1 - (int)p->iNext" number_literal - (cast_expression "(int)p->iNext" ( (type_descriptor "int" primitive_type) ) (field_expression "p->iNext" identifier -> field_identifier))) ))) )))) ;) (if_statement "if (unaff_s5 < (sqlite3 *)p->iNext) goto LAB_000d6c9c;" if (parenthesized_expression "(unaff_s5 < (sqlite3 *)p->iNext)" ( (binary_expression "unaff_s5 < (sqlite3 *)p->iNext" identifier < (cast_expression "(sqlite3 *)p->iNext" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->iNext" identifier -> field_identifier))) )) (goto_statement "goto LAB_000d6c9c;" goto statement_identifier ;)) (if_statement "if (p->isAttached == 0) {\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }" if (parenthesized_expression "(p->isAttached == 0)" ( (binary_expression "p->isAttached == 0" (field_expression "p->isAttached" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        pPVar5 = p->pSrc->pBt->pPager;\n        p->pNext = pPVar5->pBackup;\n        pPVar5->pBackup = p;\n        p->isAttached = 1;\n      }" { (expression_statement "pPVar5 = p->pSrc->pBt->pPager;" (assignment_expression "pPVar5 = p->pSrc->pBt->pPager" identifier = (field_expression "p->pSrc->pBt->pPager" (field_expression "p->pSrc->pBt" (field_expression "p->pSrc" identifier -> field_identifier) -> field_identifier) -> field_identifier)) ;) (expression_statement "p->pNext = pPVar5->pBackup;" (assignment_expression "p->pNext = pPVar5->pBackup" (field_expression "p->pNext" identifier -> field_identifier) = (field_expression "pPVar5->pBackup" identifier -> field_identifier)) ;) (expression_statement "pPVar5->pBackup = p;" (assignment_expression "pPVar5->pBackup = p" (field_expression "pPVar5->pBackup" identifier -> field_identifier) = identifier) ;) (expression_statement "p->isAttached = 1;" (assignment_expression "p->isAttached = 1" (field_expression "p->isAttached" identifier -> field_identifier) = number_literal) ;) })) (if_statement "if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) goto LAB_000d6c34;" if (parenthesized_expression "(p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0)" ( (binary_expression "p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier != (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6c34;" goto statement_identifier ;)) (goto_statement "goto LAB_000d6e5c;" goto statement_identifier ;) })) (labeled_statement "LAB_000d6c94:\n    if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }" statement_identifier : (if_statement "if (psVar23 == (sqlite3 *)&DAT_00000065) {\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }\n    else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }" if (parenthesized_expression "(psVar23 == (sqlite3 *)&DAT_00000065)" ( (binary_expression "psVar23 == (sqlite3 *)&DAT_00000065" identifier == (cast_expression "(sqlite3 *)&DAT_00000065" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000065" & identifier))) )) (compound_statement "{\nLAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }\n      in_a2 = (sqlite3 *)(p->iDestSchema + 1);\n      psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;\n      if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);\n      pPStack_4c->dbSize = (Pgno)unaff_s5;\n      in_a2 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);\nLAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      psVar27 = (sqlite3 *)0x0;\n      psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000065;\n    }" { (labeled_statement "LAB_000d6c9c:\n      if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }" statement_identifier : (if_statement "if (unaff_s5 == (sqlite3 *)0x0) {\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }" if (parenthesized_expression "(unaff_s5 == (sqlite3 *)0x0)" ( (binary_expression "unaff_s5 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        unaff_s2 = (sqlite3 *)p->pDest;\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2->pVdbe->nChange = 0;\n        psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }\n      }" { (expression_statement "unaff_s2 = (sqlite3 *)p->pDest;" (assignment_expression "unaff_s2 = (sqlite3 *)p->pDest" identifier = (cast_expression "(sqlite3 *)p->pDest" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->pDest" identifier -> field_identifier))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" ( (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" * (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" ( (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" identifier + number_literal) )))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "unaff_s2->pVdbe->nChange = 0;" (assignment_expression "unaff_s2->pVdbe->nChange = 0" (field_expression "unaff_s2->pVdbe->nChange" (field_expression "unaff_s2->pVdbe" identifier -> field_identifier) -> field_identifier) = number_literal) ;) (expression_statement "psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe);" (assignment_expression "psVar23 = (sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe)" identifier = (cast_expression "(sqlite3 *)newDatabase((BtShared *)unaff_s2->pVdbe)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "newDatabase((BtShared *)unaff_s2->pVdbe)" identifier (argument_list "((BtShared *)unaff_s2->pVdbe)" ( (cast_expression "(BtShared *)unaff_s2->pVdbe" ( (type_descriptor "BtShared *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "unaff_s2->pVdbe" identifier -> field_identifier)) ))))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x524c" identifier + number_literal) )))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (if_statement "if (psVar23 == (sqlite3 *)0x0) {\n          unaff_s5 = (sqlite3 *)0x1;\n        }\n        else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          unaff_s5 = (sqlite3 *)0x1;\n        }" { (expression_statement "unaff_s5 = (sqlite3 *)0x1;" (assignment_expression "unaff_s5 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }" else (compound_statement "{\n          unaff_s5 = (sqlite3 *)0x1;\n          if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;\n        }" { (expression_statement "unaff_s5 = (sqlite3 *)0x1;" (assignment_expression "unaff_s5 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (psVar23 != (sqlite3 *)&DAT_00000065) goto LAB_000d6e48;" if (parenthesized_expression "(psVar23 != (sqlite3 *)&DAT_00000065)" ( (binary_expression "psVar23 != (sqlite3 *)&DAT_00000065" identifier != (cast_expression "(sqlite3 *)&DAT_00000065" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000065" & identifier))) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) }))) }))) (expression_statement "in_a2 = (sqlite3 *)(p->iDestSchema + 1);" (assignment_expression "in_a2 = (sqlite3 *)(p->iDestSchema + 1)" identifier = (cast_expression "(sqlite3 *)(p->iDestSchema + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(p->iDestSchema + 1)" ( (binary_expression "p->iDestSchema + 1" (field_expression "p->iDestSchema" identifier -> field_identifier) + number_literal) )))) ;) (expression_statement "psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2);" (assignment_expression "psVar23 = (sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2)" identifier = (cast_expression "(sqlite3 *)sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3BtreeUpdateMeta(p->pDest,1,(u32)in_a2)" identifier (argument_list "(p->pDest,1,(u32)in_a2)" ( (field_expression "p->pDest" identifier -> field_identifier) , number_literal , (cast_expression "(u32)in_a2" ( (type_descriptor "u32" type_identifier) ) identifier) ))))) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (if_statement "if (p->pDestDb != (sqlite3 *)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" if (parenthesized_expression "(p->pDestDb != (sqlite3 *)0x0)" ( (binary_expression "p->pDestDb != (sqlite3 *)0x0" (field_expression "p->pDestDb" identifier -> field_identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" { (expression_statement "(*(code *)(PTR_LAB_0018fc04 + -0x824))();" (call_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))()" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))" ( (pointer_expression "*(code *)(PTR_LAB_0018fc04 + -0x824)" * (cast_expression "(code *)(PTR_LAB_0018fc04 + -0x824)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fc04 + -0x824)" ( (binary_expression "PTR_LAB_0018fc04 + -0x824" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))\n      goto LAB_000d6e48;" if (parenthesized_expression "((uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0))" ( (binary_expression "(uVar1 == '\x05') &&\n         (psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0)" (parenthesized_expression "(uVar1 == '\x05')" ( (binary_expression "uVar1 == '\x05'" identifier == (char_literal "'\x05'" ' escape_sequence ')) )) && (parenthesized_expression "(psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0)" ( (comma_expression "psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2), psVar23 != (sqlite3 *)0x0" (assignment_expression "psVar23 = (sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2)" identifier = (cast_expression "(sqlite3 *)sqlite3BtreeSetVersion(p->pDest,2)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3BtreeSetVersion(p->pDest,2)" identifier (argument_list "(p->pDest,2)" ( (field_expression "p->pDest" identifier -> field_identifier) , number_literal ))))) , (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (expression_statement "pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948;" (assignment_expression "pcVar3 = (code *)PTR_sBegin_ru_stime_tv_sec_0018f948" identifier = (cast_expression "(code *)PTR_sBegin_ru_stime_tv_sec_0018f948" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((int)psStack_5c < (int)psStack_40) {\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" if (parenthesized_expression "((int)psStack_5c < (int)psStack_40)" ( (binary_expression "(int)psStack_5c < (int)psStack_40" (cast_expression "(int)psStack_5c" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)psStack_40" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }\n        iVar26 = (int)psStack_40 / (int)psStack_5c;\n        if (iVar26 == 0) {\n          trap(7);\n        }\n        psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);\n        uVar13 = p->pDest->pBt->pageSize;\n        if (uVar13 == 0) {\n          trap(7);\n        }\n        if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }\n        nPage = (int)psStack_5c >> 0x1f;\n        psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));\n        psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));\n        psVar14 = pPStack_4c->fd;\n        unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;\n        in_a3 = psVar28;\n        unaff_s6 = psStack_5c;\n        unaff_s7 = pcVar3;\n        if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }\n        in_a2 = (sqlite3 *)0x1;\n        psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);\n        psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);\n        if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }\n        unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);\n        unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);\n        if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" { (if_statement "if (psStack_5c == (sqlite3 *)0x0) {\n          trap(7);\n        }" if (parenthesized_expression "(psStack_5c == (sqlite3 *)0x0)" ( (binary_expression "psStack_5c == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar26 = (int)psStack_40 / (int)psStack_5c;" (assignment_expression "iVar26 = (int)psStack_40 / (int)psStack_5c" identifier = (binary_expression "(int)psStack_40 / (int)psStack_5c" (cast_expression "(int)psStack_40" ( (type_descriptor "int" primitive_type) ) identifier) / (cast_expression "(int)psStack_5c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar26 == 0) {\n          trap(7);\n        }" if (parenthesized_expression "(iVar26 == 0)" ( (binary_expression "iVar26 == 0" identifier == number_literal) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26);" (assignment_expression "psVar27 = (sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26)" identifier = (cast_expression "(sqlite3 *)(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26)" ( (binary_expression "((int)unaff_s5->aLimit + iVar26 + -0x6d) / iVar26" (parenthesized_expression "((int)unaff_s5->aLimit + iVar26 + -0x6d)" ( (binary_expression "(int)unaff_s5->aLimit + iVar26 + -0x6d" (binary_expression "(int)unaff_s5->aLimit + iVar26" (cast_expression "(int)unaff_s5->aLimit" ( (type_descriptor "int" primitive_type) ) (field_expression "unaff_s5->aLimit" identifier -> field_identifier)) + identifier) + number_literal) )) / identifier) )))) ;) (expression_statement "uVar13 = p->pDest->pBt->pageSize;" (assignment_expression "uVar13 = p->pDest->pBt->pageSize" identifier = (field_expression "p->pDest->pBt->pageSize" (field_expression "p->pDest->pBt" (field_expression "p->pDest" identifier -> field_identifier) -> field_identifier) -> field_identifier)) ;) (if_statement "if (uVar13 == 0) {\n          trap(7);\n        }" if (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (if_statement "if ((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27) {\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }" if (parenthesized_expression "((sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27)" ( (binary_expression "(sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1) ==\n            psVar27" (cast_expression "(sqlite3 *)(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1)" ( (binary_expression "*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13 + 1" (binary_expression "*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) / uVar13" (pointer_expression "*(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" * (cast_expression "(uint *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" ( (binary_expression "PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80" identifier + number_literal) )))) / identifier) + number_literal) ))) == identifier) )) (compound_statement "{\n          psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);\n        }" { (expression_statement "psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3);" (assignment_expression "psVar27 = (sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3)" identifier = (cast_expression "(sqlite3 *)((int)&psVar27[-1].pNextBlocked + 3)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar27[-1].pNextBlocked + 3)" ( (binary_expression "(int)&psVar27[-1].pNextBlocked + 3" (cast_expression "(int)&psVar27[-1].pNextBlocked" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar27[-1].pNextBlocked" & (field_expression "psVar27[-1].pNextBlocked" (subscript_expression "psVar27[-1]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))) ;) })) (expression_statement "nPage = (int)psStack_5c >> 0x1f;" (assignment_expression "nPage = (int)psStack_5c >> 0x1f" identifier = (binary_expression "(int)psStack_5c >> 0x1f" (cast_expression "(int)psStack_5c" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (expression_statement "psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c));" (assignment_expression "psVar28 = (sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c))" identifier = (cast_expression "(sqlite3 *)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c))" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(psStack_5c))" ( (binary_expression "ZEXT48(unaff_s5) * ZEXT48(psStack_5c)" (call_expression "ZEXT48(unaff_s5)" identifier (argument_list "(unaff_s5)" ( identifier ))) * (call_expression "ZEXT48(psStack_5c)" identifier (argument_list "(psStack_5c)" ( identifier )))) )))) ;) (expression_statement "psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20));" (assignment_expression "psVar6 = (sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20))" identifier = (cast_expression "(sqlite3 *)\n                 (nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20))" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20))" ( (binary_expression "nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c +\n                 (int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20)" (binary_expression "nPage * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)psStack_5c" (binary_expression "nPage * (int)unaff_s5" identifier * (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) + (binary_expression "((int)unaff_s5 >> 0x1f) * (int)psStack_5c" (parenthesized_expression "((int)unaff_s5 >> 0x1f)" ( (binary_expression "(int)unaff_s5 >> 0x1f" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) * (cast_expression "(int)psStack_5c" ( (type_descriptor "int" primitive_type) ) identifier))) + (cast_expression "(int)(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20)" ( (binary_expression "ZEXT48(unaff_s5) * ZEXT48(psStack_5c) >> 0x20" (binary_expression "ZEXT48(unaff_s5) * ZEXT48(psStack_5c)" (call_expression "ZEXT48(unaff_s5)" identifier (argument_list "(unaff_s5)" ( identifier ))) * (call_expression "ZEXT48(psStack_5c)" identifier (argument_list "(psStack_5c)" ( identifier )))) >> number_literal) )))) )))) ;) (expression_statement "psVar14 = pPStack_4c->fd;" (assignment_expression "psVar14 = pPStack_4c->fd" identifier = (field_expression "pPStack_4c->fd" identifier -> field_identifier)) ;) (expression_statement "unaff_s5 = (sqlite3 *)pPStack_4c->dbSize;" (assignment_expression "unaff_s5 = (sqlite3 *)pPStack_4c->dbSize" identifier = (cast_expression "(sqlite3 *)pPStack_4c->dbSize" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pPStack_4c->dbSize" identifier -> field_identifier))) ;) (expression_statement "in_a3 = psVar28;" (assignment_expression "in_a3 = psVar28" identifier = identifier) ;) (expression_statement "unaff_s6 = psStack_5c;" (assignment_expression "unaff_s6 = psStack_5c" identifier = identifier) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if (psVar27 <= unaff_s5) {\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }" if (parenthesized_expression "(psVar27 <= unaff_s5)" ( (binary_expression "psVar27 <= unaff_s5" identifier <= identifier) )) (compound_statement "{\n          unaff_s3 = (sqlite3 *)&pSrcPg;\n          unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);\n        }" { (expression_statement "unaff_s3 = (sqlite3 *)&pSrcPg;" (assignment_expression "unaff_s3 = (sqlite3 *)&pSrcPg" identifier = (cast_expression "(sqlite3 *)&pSrcPg" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSrcPg" & identifier))) ;) (expression_statement "unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(sqlite3 *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fbc8 + 0x6d30)" identifier = (cast_expression "(code *)(PTR_LAB_0018fbc8 + 0x6d30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbc8 + 0x6d30)" ( (binary_expression "PTR_LAB_0018fbc8 + 0x6d30" identifier + number_literal) )))) ;) (expression_statement "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (do_statement "do {\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          } while (psVar27 <= unaff_s5);" do (compound_statement "{\n            uVar13 = p->pDest->pBt->pageSize;\n            if (uVar13 == 0) {\n              trap(7);\n            }\n            in_a3 = (sqlite3 *)0x0;\n            if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }\n            psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n          }" { (expression_statement "uVar13 = p->pDest->pBt->pageSize;" (assignment_expression "uVar13 = p->pDest->pBt->pageSize" identifier = (field_expression "p->pDest->pBt->pageSize" (field_expression "p->pDest->pBt" (field_expression "p->pDest" identifier -> field_identifier) -> field_identifier) -> field_identifier)) ;) (if_statement "if (uVar13 == 0) {\n              trap(7);\n            }" if (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) (compound_statement "{\n              trap(7);\n            }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27) {\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }" if (parenthesized_expression "((sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27)" ( (binary_expression "(sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1) != psVar27" (cast_expression "(sqlite3 *)(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1)" ( (binary_expression "*(uint *)(pcVar3 + -0x1b80) / uVar13 + 1" (binary_expression "*(uint *)(pcVar3 + -0x1b80) / uVar13" (pointer_expression "*(uint *)(pcVar3 + -0x1b80)" * (cast_expression "(uint *)(pcVar3 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + -0x1b80)" ( (binary_expression "pcVar3 + -0x1b80" identifier + number_literal) )))) / identifier) + number_literal) ))) != identifier) )) (compound_statement "{\n              in_a2 = unaff_s3;\n              psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);\n              if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }\n              unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n            }" { (expression_statement "in_a2 = unaff_s3;" (assignment_expression "in_a2 = unaff_s3" identifier = identifier) ;) (expression_statement "psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27);" (assignment_expression "psVar23 = (sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27)" identifier = (cast_expression "(sqlite3 *)(*(code *)unaff_s8)(pPStack_4c,psVar27)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)unaff_s8)(pPStack_4c,psVar27)" (parenthesized_expression "(*(code *)unaff_s8)" ( (pointer_expression "*(code *)unaff_s8" * (cast_expression "(code *)unaff_s8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pPStack_4c,psVar27)" ( identifier , identifier ))))) ;) (if_statement "if (psVar23 == (sqlite3 *)0x0) {\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);\n                (*pcVar7)(pSrcPg);\n              }" { (expression_statement "psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg);" (assignment_expression "psVar23 = (sqlite3 *)(*pcVar4)(pSrcPg)" identifier = (cast_expression "(sqlite3 *)(*pcVar4)(pSrcPg)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*pcVar4)(pSrcPg)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pSrcPg)" ( identifier ))))) ;) (expression_statement "(*pcVar7)(pSrcPg);" (call_expression "(*pcVar7)(pSrcPg)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(pSrcPg)" ( identifier ))) ;) })) (expression_statement "unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1);" (assignment_expression "unaff_s2 = (sqlite3 *)((int)&psVar27->pVfs + 1)" identifier = (cast_expression "(sqlite3 *)((int)&psVar27->pVfs + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar27->pVfs + 1)" ( (binary_expression "(int)&psVar27->pVfs + 1" (cast_expression "(int)&psVar27->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar27->pVfs" & (field_expression "psVar27->pVfs" identifier -> field_identifier))) + number_literal) )))) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) })) (expression_statement "psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);" (assignment_expression "psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1)" identifier = (cast_expression "(sqlite3 *)((int)&psVar27->pVfs + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar27->pVfs + 1)" ( (binary_expression "(int)&psVar27->pVfs + 1" (cast_expression "(int)&psVar27->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar27->pVfs" & (field_expression "psVar27->pVfs" identifier -> field_identifier))) + number_literal) )))) ;) }) while (parenthesized_expression "(psVar27 <= unaff_s5)" ( (binary_expression "psVar27 <= unaff_s5" identifier <= identifier) )) ;) })) (expression_statement "in_a2 = (sqlite3 *)0x1;" (assignment_expression "in_a2 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1);" (assignment_expression "psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1)" identifier = (cast_expression "(sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,1)" identifier (argument_list "(pPStack_4c,(char *)0x0,1)" ( identifier , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal ))))) ;) (expression_statement "psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);" (assignment_expression "psStack_40 = (sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c)" identifier = (cast_expression "(sqlite3 *)\n                     ((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c)" ( (binary_expression "(int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c" (binary_expression "(int)psStack_40->aLimit +\n                     *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" (cast_expression "(int)psStack_40->aLimit" ( (type_descriptor "int" primitive_type) ) (field_expression "psStack_40->aLimit" identifier -> field_identifier)) + (pointer_expression "*(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" * (cast_expression "(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" ( (binary_expression "PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80" identifier + number_literal) ))))) + number_literal) )))) ;) (expression_statement "unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f);" (assignment_expression "unaff_s5 = (sqlite3 *)((int)psStack_40 >> 0x1f)" identifier = (cast_expression "(sqlite3 *)((int)psStack_40 >> 0x1f)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psStack_40 >> 0x1f)" ( (binary_expression "(int)psStack_40 >> 0x1f" (cast_expression "(int)psStack_40" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (if_statement "if (((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))) {\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }" if (parenthesized_expression "(((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40))))" ( (binary_expression "((int)psVar6 < (int)unaff_s5) || ((unaff_s5 == psVar6 && (psVar28 < psStack_40)))" (parenthesized_expression "((int)psVar6 < (int)unaff_s5)" ( (binary_expression "(int)psVar6 < (int)unaff_s5" (cast_expression "(int)psVar6" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == psVar6 && (psVar28 < psStack_40)))" ( (parenthesized_expression "(unaff_s5 == psVar6 && (psVar28 < psStack_40))" ( (binary_expression "unaff_s5 == psVar6 && (psVar28 < psStack_40)" (binary_expression "unaff_s5 == psVar6" identifier == identifier) && (parenthesized_expression "(psVar28 < psStack_40)" ( (binary_expression "psVar28 < psStack_40" identifier < identifier) ))) )) ))) )) (compound_statement "{\n          unaff_s5 = psVar6;\n          psStack_40 = psVar28;\n        }" { (expression_statement "unaff_s5 = psVar6;" (assignment_expression "unaff_s5 = psVar6" identifier = identifier) ;) (expression_statement "psStack_40 = psVar28;" (assignment_expression "psStack_40 = psVar28" identifier = identifier) ;) })) (expression_statement "unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c);" (assignment_expression "unaff_s3 = (sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c)" identifier = (cast_expression "(sqlite3 *)\n                   ((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c)" ( (binary_expression "(int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80) + -0x6c" (binary_expression "(int)psStack_5c->aLimit +\n                   *(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" (cast_expression "(int)psStack_5c->aLimit" ( (type_descriptor "int" primitive_type) ) (field_expression "psStack_5c->aLimit" identifier -> field_identifier)) + (pointer_expression "*(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" * (cast_expression "(int *)(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80)" ( (binary_expression "PTR_sBegin_ru_stime_tv_sec_0018f948 + -0x1b80" identifier + number_literal) ))))) + number_literal) )))) ;) (expression_statement "unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f);" (assignment_expression "unaff_s2 = (sqlite3 *)((int)unaff_s3 >> 0x1f)" identifier = (cast_expression "(sqlite3 *)((int)unaff_s3 >> 0x1f)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s3 >> 0x1f)" ( (binary_expression "(int)unaff_s3 >> 0x1f" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (if_statement "if (psVar23 == (sqlite3 *)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }\n          psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);\n          unaff_s7 = pcVar3;\n          if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" { (if_statement "if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             ) {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }" if (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))\n             )" ( (binary_expression "((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" ( (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))" ( (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))" ( (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)" (binary_expression "unaff_s5 == unaff_s2" identifier == identifier) && (parenthesized_expression "(unaff_s3 < psStack_40)" ( (binary_expression "unaff_s3 < psStack_40" identifier < identifier) ))) )) ))) )) (compound_statement "{\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);\n            psVar27 = unaff_s3;\n            do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));\n          }" { (expression_statement "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x9e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x9e0)" ( (binary_expression "PTR_LAB_0018fb58 + 0x9e0" identifier + number_literal) )))) ;) (expression_statement "unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "unaff_s8 = (sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(sqlite3 *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (expression_statement "psVar27 = unaff_s3;" (assignment_expression "psVar27 = unaff_s3" identifier = identifier) ;) (do_statement "do {\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))));" do (compound_statement "{\n              pSrcPg = (DbPage *)0x0;\n              (*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);\n              in_a3 = (sqlite3 *)0x0;\n              in_a2 = (sqlite3 *)&pSrcPg;\n              psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }\n              in_a2 = psStack_5c;\n              psStack_70 = unaff_s2;\n              psStack_6c = psVar27;\n              psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);\n              (*(code *)unaff_s8)(pSrcPg);\n              unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);\n              unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));\n              if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;\n              psVar27 = unaff_s3;\n            }" { (expression_statement "pSrcPg = (DbPage *)0x0;" (assignment_expression "pSrcPg = (DbPage *)0x0" identifier = (cast_expression "(DbPage *)0x0" ( (type_descriptor "DbPage *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c);" (call_expression "(*(code *)PTR___divdi3_0018fa10)(unaff_s2,psVar27,nPage,psStack_5c)" (parenthesized_expression "(*(code *)PTR___divdi3_0018fa10)" ( (pointer_expression "*(code *)PTR___divdi3_0018fa10" * (cast_expression "(code *)PTR___divdi3_0018fa10" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,psVar27,nPage,psStack_5c)" ( identifier , identifier , identifier , identifier ))) ;) (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "in_a2 = (sqlite3 *)&pSrcPg;" (assignment_expression "in_a2 = (sqlite3 *)&pSrcPg" identifier = (cast_expression "(sqlite3 *)&pSrcPg" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pSrcPg" & identifier))) ;) (expression_statement "psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1);" (assignment_expression "psVar23 = (sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1)" identifier = (cast_expression "(sqlite3 *)(*pcVar3)(paStack_60,extraout_v1 + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*pcVar3)(paStack_60,extraout_v1 + 1)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(paStack_60,extraout_v1 + 1)" ( identifier , (binary_expression "extraout_v1 + 1" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);\n                unaff_s3 = psVar27;\n                goto LAB_000d6e48;\n              }" { (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(pSrcPg)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x49ec)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) )) (argument_list "(pSrcPg)" ( identifier ))) ;) (expression_statement "unaff_s3 = psVar27;" (assignment_expression "unaff_s3 = psVar27" identifier = identifier) ;) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;) })) (expression_statement "in_a2 = psStack_5c;" (assignment_expression "in_a2 = psStack_5c" identifier = identifier) ;) (expression_statement "psStack_70 = unaff_s2;" (assignment_expression "psStack_70 = unaff_s2" identifier = identifier) ;) (expression_statement "psStack_6c = psVar27;" (assignment_expression "psStack_6c = psVar27" identifier = identifier) ;) (expression_statement "psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData);" (assignment_expression "psVar23 = (sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData)" identifier = (cast_expression "(sqlite3 *)(*pcVar4)(psVar14,pSrcPg->pData)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*pcVar4)(psVar14,pSrcPg->pData)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(psVar14,pSrcPg->pData)" ( identifier , (field_expression "pSrcPg->pData" identifier -> field_identifier) ))))) ;) (expression_statement "(*(code *)unaff_s8)(pSrcPg);" (call_expression "(*(code *)unaff_s8)(pSrcPg)" (parenthesized_expression "(*(code *)unaff_s8)" ( (pointer_expression "*(code *)unaff_s8" * (cast_expression "(code *)unaff_s8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pSrcPg)" ( identifier ))) ;) (expression_statement "unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U);" (assignment_expression "unaff_s3 = (sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U)" identifier = (cast_expression "(sqlite3 *)\n                         ((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U)" ( (binary_expression "(int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit + 0xffffff94U" (binary_expression "(int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5) +\n                         (int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit" (cast_expression "(int)(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5)" ( (binary_expression "((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit\n                               + 0xffffffe5" (field_expression "((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))->aLimit" (parenthesized_expression "((sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b))" ( (cast_expression "(sqlite3 *)\n                                (((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b)" ( (binary_expression "((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit + -0x1b" (field_expression "((sqlite3 *)(psStack_5c->aLimit + -0x1b))->aLimit" (parenthesized_expression "((sqlite3 *)(psStack_5c->aLimit + -0x1b))" ( (cast_expression "(sqlite3 *)(psStack_5c->aLimit + -0x1b)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(psStack_5c->aLimit + -0x1b)" ( (binary_expression "psStack_5c->aLimit + -0x1b" (field_expression "psStack_5c->aLimit" identifier -> field_identifier) + number_literal) ))) )) -> field_identifier) + number_literal) ))) )) -> field_identifier) + number_literal) ))) + (cast_expression "(int)((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit" ( (type_descriptor "int" primitive_type) ) (field_expression "((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))->aLimit" (parenthesized_expression "((sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b))" ( (cast_expression "(sqlite3 *)\n                              (((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b)" ( (binary_expression "((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit + -0x1b" (field_expression "((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))\n                               ->aLimit" (parenthesized_expression "((sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b))" ( (cast_expression "(sqlite3 *)(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b)" ( (binary_expression "((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit + -0x1b" (field_expression "((sqlite3 *)(psVar27->aLimit + -0x1b))->aLimit" (parenthesized_expression "((sqlite3 *)(psVar27->aLimit + -0x1b))" ( (cast_expression "(sqlite3 *)(psVar27->aLimit + -0x1b)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(psVar27->aLimit + -0x1b)" ( (binary_expression "psVar27->aLimit + -0x1b" (field_expression "psVar27->aLimit" identifier -> field_identifier) + number_literal) ))) )) -> field_identifier) + number_literal) ))) )) -> field_identifier) + number_literal) ))) )) -> field_identifier))) + number_literal) )))) ;) (expression_statement "unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c));" (assignment_expression "unaff_s2 = (sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c))" identifier = (cast_expression "(sqlite3 *)(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c))" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c))" ( (binary_expression "nPage + (int)unaff_s2->aLimit + ((unaff_s3 < psVar27) - 0x6c)" (binary_expression "nPage + (int)unaff_s2->aLimit" identifier + (cast_expression "(int)unaff_s2->aLimit" ( (type_descriptor "int" primitive_type) ) (field_expression "unaff_s2->aLimit" identifier -> field_identifier))) + (parenthesized_expression "((unaff_s3 < psVar27) - 0x6c)" ( (binary_expression "(unaff_s3 < psVar27) - 0x6c" (parenthesized_expression "(unaff_s3 < psVar27)" ( (binary_expression "unaff_s3 < psVar27" identifier < identifier) )) - number_literal) ))) )))) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (expression_statement "psVar27 = unaff_s3;" (assignment_expression "psVar27 = unaff_s3" identifier = identifier) ;) }) while (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))))" ( (binary_expression "((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" ( (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)))" ( (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40))" ( (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < psStack_40)" (binary_expression "unaff_s5 == unaff_s2" identifier == identifier) && (parenthesized_expression "(unaff_s3 < psStack_40)" ( (binary_expression "unaff_s3 < psStack_40" identifier < identifier) ))) )) ))) )) ;) })) (expression_statement "psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg);" (assignment_expression "psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg)" identifier = (cast_expression "(sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(psVar14,&pSrcPg)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa6c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa6c)" ( (binary_expression "PTR_LAB_0018fb58 + 0xa6c" identifier + number_literal) )))) )) (argument_list "(psVar14,&pSrcPg)" ( identifier , (pointer_expression "&pSrcPg" & identifier) ))))) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if ((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))) {\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }" if (parenthesized_expression "((psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0))))" ( (binary_expression "(psVar23 == (sqlite3 *)0x0) &&\n             ((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))" (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "((((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)))" ( (parenthesized_expression "(((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0))" ( (binary_expression "((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))) ||\n              (psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)" (parenthesized_expression "((int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28))))" ( (binary_expression "(int)pSrcPg <= (int)psVar6 &&\n               (((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))" (binary_expression "(int)pSrcPg <= (int)psVar6" (cast_expression "(int)pSrcPg" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)psVar6" ( (type_descriptor "int" primitive_type) ) identifier)) && (parenthesized_expression "(((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)))" ( (parenthesized_expression "((sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28))" ( (binary_expression "(sqlite3 *)pSrcPg != psVar6 || (psStack_34 <= psVar28)" (binary_expression "(sqlite3 *)pSrcPg != psVar6" (cast_expression "(sqlite3 *)pSrcPg" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != identifier) || (parenthesized_expression "(psStack_34 <= psVar28)" ( (binary_expression "psStack_34 <= psVar28" identifier <= identifier) ))) )) ))) )) || (parenthesized_expression "(psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0)" ( (comma_expression "psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14), in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0" (assignment_expression "psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14)" identifier = (cast_expression "(sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))(psVar14)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa14)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa14)" ( (binary_expression "PTR_LAB_0018fb58 + 0xa14" identifier + number_literal) )))) )) (argument_list "(psVar14)" ( identifier ))))) , (comma_expression "in_a2 = psVar6,\n              in_a3 = psVar28, psVar23 == (sqlite3 *)0x0" (assignment_expression "in_a2 = psVar6" identifier = identifier) , (comma_expression "in_a3 = psVar28, psVar23 == (sqlite3 *)0x0" (assignment_expression "in_a3 = psVar28" identifier = identifier) , (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))))) ))) )) ))) )) (compound_statement "{\n            psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);\n            goto LAB_000d6f68;\n          }" { (expression_statement "psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0);" (assignment_expression "psVar23 = (sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0)" identifier = (cast_expression "(sqlite3 *)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(pPStack_4c,0)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x4a30)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x4a30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x4a30)" ( (binary_expression "PTR_LAB_0018fb58 + 0x4a30" identifier + number_literal) )))) )) (argument_list "(pPStack_4c,0)" ( identifier , number_literal ))))) ;) (goto_statement "goto LAB_000d6f68;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;) })) (if_statement "if (psStack_40 == (sqlite3 *)0x0) {\n        trap(7);\n      }" if (parenthesized_expression "(psStack_40 == (sqlite3 *)0x0)" ( (binary_expression "psStack_40 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5);" (assignment_expression "unaff_s5 = (sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5)" identifier = (cast_expression "(sqlite3 *)(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)psStack_5c / (int)psStack_40) * (int)unaff_s5)" ( (binary_expression "((int)psStack_5c / (int)psStack_40) * (int)unaff_s5" (parenthesized_expression "((int)psStack_5c / (int)psStack_40)" ( (binary_expression "(int)psStack_5c / (int)psStack_40" (cast_expression "(int)psStack_5c" ( (type_descriptor "int" primitive_type) ) identifier) / (cast_expression "(int)psStack_40" ( (type_descriptor "int" primitive_type) ) identifier)) )) * (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "pPStack_4c->dbSize = (Pgno)unaff_s5;" (assignment_expression "pPStack_4c->dbSize = (Pgno)unaff_s5" (field_expression "pPStack_4c->dbSize" identifier -> field_identifier) = (cast_expression "(Pgno)unaff_s5" ( (type_descriptor "Pgno" type_identifier) ) identifier)) ;) (expression_statement "in_a2 = (sqlite3 *)0x0;" (assignment_expression "in_a2 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0);" (assignment_expression "psVar23 = (sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0)" identifier = (cast_expression "(sqlite3 *)sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3PagerCommitPhaseOne(pPStack_4c,(char *)0x0,0)" identifier (argument_list "(pPStack_4c,(char *)0x0,0)" ( identifier , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , number_literal ))))) ;) (labeled_statement "LAB_000d6f68:\n      if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;" statement_identifier : (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;))) (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0);" (assignment_expression "psVar23 = (sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0)" identifier = (cast_expression "(sqlite3 *)sqlite3BtreeCommitPhaseTwo(p->pDest,0)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sqlite3BtreeCommitPhaseTwo(p->pDest,0)" identifier (argument_list "(p->pDest,0)" ( (field_expression "p->pDest" identifier -> field_identifier) , number_literal ))))) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (if_statement "if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }" if (parenthesized_expression "(p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0)" ( (binary_expression "p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier != (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        psVar23 = (sqlite3 *)&DAT_00000065;\n        goto LAB_000d6c34;\n      }" { (expression_statement "psVar23 = (sqlite3 *)&DAT_00000065;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000065" identifier = (cast_expression "(sqlite3 *)&DAT_00000065" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000065" & identifier))) ;) (goto_statement "goto LAB_000d6c34;" goto statement_identifier ;) })) (expression_statement "psVar23 = (sqlite3 *)&DAT_00000065;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000065" identifier = (cast_expression "(sqlite3 *)&DAT_00000065" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000065" & identifier))) ;) }) (else_clause "else {\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }" else (compound_statement "{\nLAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;\n      if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }\n      if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }\n    }" { (labeled_statement "LAB_000d6e48:\n      psVar27 = (sqlite3 *)0x0;" statement_identifier : (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (if_statement "if (p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0) {\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }" if (parenthesized_expression "(p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0)" ( (binary_expression "p_Stack_50 != (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier != (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);\n        psVar27 = (sqlite3 *)0x0;\n        sqlite3BtreeCommitPhaseTwo(p->pSrc,0);\n      }" { (labeled_statement "LAB_000d6c34:\n        sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);" statement_identifier : (expression_statement "sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0);" (call_expression "sqlite3BtreeCommitPhaseOne(p->pSrc,(char *)0x0)" identifier (argument_list "(p->pSrc,(char *)0x0)" ( (field_expression "p->pSrc" identifier -> field_identifier) , (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;)) (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "sqlite3BtreeCommitPhaseTwo(p->pSrc,0);" (call_expression "sqlite3BtreeCommitPhaseTwo(p->pSrc,0)" identifier (argument_list "(p->pSrc,0)" ( (field_expression "p->pSrc" identifier -> field_identifier) , number_literal ))) ;) })) (if_statement "if (psVar23 == (sqlite3 *)0xc0a) {\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0xc0a)" ( (binary_expression "psVar23 == (sqlite3 *)0xc0a" identifier == (cast_expression "(sqlite3 *)0xc0a" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        psVar23 = (sqlite3 *)&DAT_00000007;\n      }" { (expression_statement "psVar23 = (sqlite3 *)&DAT_00000007;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000007" identifier = (cast_expression "(sqlite3 *)&DAT_00000007" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000007" & identifier))) ;) })) })))) (labeled_statement "LAB_000d6e5c:\n    p->rc = (int)psVar23;" statement_identifier : (expression_statement "p->rc = (int)psVar23;" (assignment_expression "p->rc = (int)psVar23" (field_expression "p->rc" identifier -> field_identifier) = (cast_expression "(int)psVar23" ( (type_descriptor "int" primitive_type) ) identifier)) ;)) }) (else_clause "else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }\n  }" else (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);\n    psVar23 = (sqlite3 *)p->rc;\n    if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }\n  }" { (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(p->pDestDb->mutex)" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" * (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(p->pDestDb->mutex)" ( (field_expression "p->pDestDb->mutex" (field_expression "p->pDestDb" identifier -> field_identifier) -> field_identifier) ))) ;) (expression_statement "psVar23 = (sqlite3 *)p->rc;" (assignment_expression "psVar23 = (sqlite3 *)p->rc" identifier = (cast_expression "(sqlite3 *)p->rc" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p->rc" identifier -> field_identifier))) ;) (if_statement "if (psVar23 == (sqlite3 *)0x0) {\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }" if (parenthesized_expression "(psVar23 == (sqlite3 *)0x0)" ( (binary_expression "psVar23 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pBVar17 = p->pSrc;\nLAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;\n      pPStack_4c = p->pDest->pBt->pPager;\n      if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;\n      if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      psVar23 = (sqlite3 *)&DAT_00000005;\n      p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\nLAB_000d6a44:\n      pBVar17 = p->pSrc;\nLAB_000d6a48:\n      pBVar2 = pBVar17->pBt;\n      psStack_5c = (sqlite3 *)pBVar2->pageSize;\n      pBVar12 = p->pDest->pBt;\n      psStack_40 = (sqlite3 *)pBVar12->pageSize;\n      uVar1 = pBVar12->pPager->journalMode;\n      goto LAB_000d6a70;\n    }" { (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;) (labeled_statement "LAB_000d6970:\n      paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;" statement_identifier : (expression_statement "paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager;" (assignment_expression "paStack_60 = (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager" identifier = (cast_expression "(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)pBVar17->pBt->pPager" ( (type_descriptor "anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar17->pBt->pPager" (field_expression "pBVar17->pBt" identifier -> field_identifier) -> field_identifier))) ;)) (expression_statement "pPStack_4c = p->pDest->pBt->pPager;" (assignment_expression "pPStack_4c = p->pDest->pBt->pPager" identifier = (field_expression "p->pDest->pBt->pPager" (field_expression "p->pDest->pBt" (field_expression "p->pDest" identifier -> field_identifier) -> field_identifier) -> field_identifier)) ;) (if_statement "if ((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))\n      goto LAB_000d69a8;" if (parenthesized_expression "((p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02'))" ( (binary_expression "(p->pDestDb == (sqlite3 *)0x0) || (pBVar17->pBt->inTransaction != '\x02')" (parenthesized_expression "(p->pDestDb == (sqlite3 *)0x0)" ( (binary_expression "p->pDestDb == (sqlite3 *)0x0" (field_expression "p->pDestDb" identifier -> field_identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(pBVar17->pBt->inTransaction != '\x02')" ( (binary_expression "pBVar17->pBt->inTransaction != '\x02'" (field_expression "pBVar17->pBt->inTransaction" (field_expression "pBVar17->pBt" identifier -> field_identifier) -> field_identifier) != (char_literal "'\x02'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000d69a8;" goto statement_identifier ;)) (if_statement "if (p->bDestLocked != 0) {\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" if (parenthesized_expression "(p->bDestLocked != 0)" ( (binary_expression "p->bDestLocked != 0" (field_expression "p->bDestLocked" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n        p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;\n        psVar23 = (sqlite3 *)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" { (expression_statement "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;" (assignment_expression "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier = (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)&DAT_00000005;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000005" identifier = (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) ;) (goto_statement "goto LAB_000d72d0;" goto statement_identifier ;) })) (expression_statement "psVar23 = (sqlite3 *)&DAT_00000005;" (assignment_expression "psVar23 = (sqlite3 *)&DAT_00000005" identifier = (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) ;) (expression_statement "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0;" (assignment_expression "p_Stack_50 = (_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" identifier = (cast_expression "(_func_int_u32_void_ptr_void_ptr_void_ptr *)0x0" ( (type_descriptor "_func_int_u32_void_ptr_void_ptr_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d6a44:\n      pBVar17 = p->pSrc;" statement_identifier : (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;)) (labeled_statement "LAB_000d6a48:\n      pBVar2 = pBVar17->pBt;" statement_identifier : (expression_statement "pBVar2 = pBVar17->pBt;" (assignment_expression "pBVar2 = pBVar17->pBt" identifier = (field_expression "pBVar17->pBt" identifier -> field_identifier)) ;)) (expression_statement "psStack_5c = (sqlite3 *)pBVar2->pageSize;" (assignment_expression "psStack_5c = (sqlite3 *)pBVar2->pageSize" identifier = (cast_expression "(sqlite3 *)pBVar2->pageSize" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar2->pageSize" identifier -> field_identifier))) ;) (expression_statement "pBVar12 = p->pDest->pBt;" (assignment_expression "pBVar12 = p->pDest->pBt" identifier = (field_expression "p->pDest->pBt" (field_expression "p->pDest" identifier -> field_identifier) -> field_identifier)) ;) (expression_statement "psStack_40 = (sqlite3 *)pBVar12->pageSize;" (assignment_expression "psStack_40 = (sqlite3 *)pBVar12->pageSize" identifier = (cast_expression "(sqlite3 *)pBVar12->pageSize" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pBVar12->pageSize" identifier -> field_identifier))) ;) (expression_statement "uVar1 = pBVar12->pPager->journalMode;" (assignment_expression "uVar1 = pBVar12->pPager->journalMode" identifier = (field_expression "pBVar12->pPager->journalMode" (field_expression "pBVar12->pPager" identifier -> field_identifier) -> field_identifier)) ;) (goto_statement "goto LAB_000d6a70;" goto statement_identifier ;) })) (labeled_statement "LAB_000d7330:\n    if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }" statement_identifier : (if_statement "if ((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2) {\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }" if (parenthesized_expression "((undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2)" ( (binary_expression "(undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U) < (undefined1 *)0x2" (cast_expression "(undefined1 *)((int)&psVar23[-1].xUnlockNotify + 3U)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar23[-1].xUnlockNotify + 3U)" ( (binary_expression "(int)&psVar23[-1].xUnlockNotify + 3U" (cast_expression "(int)&psVar23[-1].xUnlockNotify" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar23[-1].xUnlockNotify" & (field_expression "psVar23[-1].xUnlockNotify" (subscript_expression "psVar23[-1]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))) < (cast_expression "(undefined1 *)0x2" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pBVar17 = p->pSrc;\n      goto LAB_000d6970;\n    }" { (expression_statement "pBVar17 = p->pSrc;" (assignment_expression "pBVar17 = p->pSrc" identifier = (field_expression "p->pSrc" identifier -> field_identifier)) ;) (goto_statement "goto LAB_000d6970;" goto statement_identifier ;) }))) }))) (if_statement "if (p->pDestDb != (sqlite3 *)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);\n  }" if (parenthesized_expression "(p->pDestDb != (sqlite3 *)0x0)" ( (binary_expression "p->pDestDb != (sqlite3 *)0x0" (field_expression "p->pDestDb" identifier -> field_identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);\n  }" { (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pDestDb->mutex)" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" * (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(p->pDestDb->mutex)" ( (field_expression "p->pDestDb->mutex" (field_expression "p->pDestDb" identifier -> field_identifier) -> field_identifier) ))) ;) })) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(p->pSrc);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(p->pSrc)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x524c" identifier + number_literal) )))) )) (argument_list "(p->pSrc)" ( (field_expression "p->pSrc" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pSrcDb->mutex);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(p->pSrcDb->mutex)" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" * (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(p->pSrcDb->mutex)" ( (field_expression "p->pSrcDb->mutex" (field_expression "p->pSrcDb" identifier -> field_identifier) -> field_identifier) ))) ;) (if_statement "if (psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc) {\n    return (int)psVar23;\n  }" if (parenthesized_expression "(psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc)" ( (binary_expression "psStack_2c == *(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc" identifier == (pointer_expression "*(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc" * (cast_expression "(sqlite3_mutex **)PTR___stack_chk_guard_0018fecc" ( (type_descriptor "sqlite3_mutex **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n    return (int)psVar23;\n  }" { (return_statement "return (int)psVar23;" return (cast_expression "(int)psVar23" ( (type_descriptor "int" primitive_type) ) identifier) ;) })) (expression_statement "pcVar3 = sqlite3WalCheckpoint;" (assignment_expression "pcVar3 = sqlite3WalCheckpoint" identifier = identifier) ;) (expression_statement "psVar18 = psStack_2c;" (assignment_expression "psVar18 = psStack_2c" identifier = identifier) ;) (expression_statement "puVar25 = PTR___stack_chk_fail_0018fea0;" (assignment_expression "puVar25 = PTR___stack_chk_fail_0018fea0" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0018fea0)();" (call_expression "(*(code *)PTR___stack_chk_fail_0018fea0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0018fea0)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0018fea0" * (cast_expression "(code *)PTR___stack_chk_fail_0018fea0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_198 = puVar25 + 0xc05d0;" (assignment_expression "puStack_198 = puVar25 + 0xc05d0" identifier = (binary_expression "puVar25 + 0xc05d0" identifier + number_literal)) ;) (expression_statement "psStack_188 = psStack_70;" (assignment_expression "psStack_188 = psStack_70" identifier = identifier) ;) (expression_statement "p_Stack_174 = p_Stack_64;" (assignment_expression "p_Stack_174 = p_Stack_64" identifier = identifier) ;) (expression_statement "paStack_17c = paStack_60;" (assignment_expression "paStack_17c = paStack_60" identifier = identifier) ;) (expression_statement "psStack_178 = psStack_5c;" (assignment_expression "psStack_178 = psStack_5c" identifier = identifier) ;) (expression_statement "pWStack_ac = (Wal *)**(undefined4 **)(puVar25 + 0xb8b7c);" (assignment_expression "pWStack_ac = (Wal *)**(undefined4 **)(puVar25 + 0xb8b7c)" identifier = (cast_expression "(Wal *)**(undefined4 **)(puVar25 + 0xb8b7c)" ( (type_descriptor "Wal *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar25 + 0xb8b7c)" * (pointer_expression "*(undefined4 **)(puVar25 + 0xb8b7c)" * (cast_expression "(undefined4 **)(puVar25 + 0xb8b7c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar25 + 0xb8b7c)" ( (binary_expression "puVar25 + 0xb8b7c" identifier + number_literal) ))))))) ;) (expression_statement "iStack_130 = 0;" (assignment_expression "iStack_130 = 0" identifier = number_literal) ;) (expression_statement "psStack_18c = in_a3;" (assignment_expression "psStack_18c = in_a3" identifier = identifier) ;) (expression_statement "psStack_180 = psVar27;" (assignment_expression "psStack_180 = psVar27" identifier = identifier) ;) (expression_statement "psStack_a8 = p;" (assignment_expression "psStack_a8 = p" identifier = identifier) ;) (expression_statement "psStack_a4 = psVar23;" (assignment_expression "psStack_a4 = psVar23" identifier = identifier) ;) (expression_statement "psStack_a0 = unaff_s2;" (assignment_expression "psStack_a0 = unaff_s2" identifier = identifier) ;) (expression_statement "psStack_9c = unaff_s3;" (assignment_expression "psStack_9c = unaff_s3" identifier = identifier) ;) (expression_statement "psStack_98 = (sqlite3 *)nPage;" (assignment_expression "psStack_98 = (sqlite3 *)nPage" identifier = (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "psStack_94 = unaff_s5;" (assignment_expression "psStack_94 = unaff_s5" identifier = identifier) ;) (expression_statement "psStack_90 = unaff_s6;" (assignment_expression "psStack_90 = unaff_s6" identifier = identifier) ;) (expression_statement "pcStack_8c = unaff_s7;" (assignment_expression "pcStack_8c = unaff_s7" identifier = identifier) ;) (expression_statement "psStack_88 = unaff_s8;" (assignment_expression "psStack_88 = unaff_s8" identifier = identifier) ;) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" identifier = identifier) ;) (expression_statement "psStack_78 = in_a2;" (assignment_expression "psStack_78 = in_a2" identifier = identifier) ;) (if_statement "if (psVar18[1].mutex.__size[0x16] == '\0') {\n    in_a2 = (sqlite3 *)0x1;\n    psVar27 = (sqlite3 *)0x1;\n    psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();\n    psVar6 = psVar28;\n    if (psVar28 == (sqlite3 *)0x0) {\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }\n  }\n  else {\n    psVar6 = (sqlite3 *)&DAT_00000008;\n  }" if (parenthesized_expression "(psVar18[1].mutex.__size[0x16] == '\0')" ( (binary_expression "psVar18[1].mutex.__size[0x16] == '\0'" (subscript_expression "psVar18[1].mutex.__size[0x16]" (field_expression "psVar18[1].mutex.__size" (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    in_a2 = (sqlite3 *)0x1;\n    psVar27 = (sqlite3 *)0x1;\n    psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();\n    psVar6 = psVar28;\n    if (psVar28 == (sqlite3 *)0x0) {\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }\n  }" { (expression_statement "in_a2 = (sqlite3 *)0x1;" (assignment_expression "in_a2 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar27 = (sqlite3 *)0x1;" (assignment_expression "psVar27 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))();" (assignment_expression "psVar28 = (sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))()" identifier = (cast_expression "(sqlite3 *)(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))()" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))()" (parenthesized_expression "(*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8))" ( (pointer_expression "*(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8)" * (cast_expression "(code *)(*(int *)(puVar25 + 0xb8808) + 0x4cd8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar25 + 0xb8808) + 0x4cd8)" ( (binary_expression "*(int *)(puVar25 + 0xb8808) + 0x4cd8" (pointer_expression "*(int *)(puVar25 + 0xb8808)" * (cast_expression "(int *)(puVar25 + 0xb8808)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + 0xb8808)" ( (binary_expression "puVar25 + 0xb8808" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))))) ;) (expression_statement "psVar6 = psVar28;" (assignment_expression "psVar6 = psVar28" identifier = identifier) ;) (if_statement "if (psVar28 == (sqlite3 *)0x0) {\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }" if (parenthesized_expression "(psVar28 == (sqlite3 *)0x0)" ( (binary_expression "psVar28 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      psVar18[1].mutex.__size[0x15] = '\x01';\n      in_a3 = (sqlite3 *)0x0;\n      if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n      in_a2 = (sqlite3 *)0x1;\n      psVar27 = (sqlite3 *)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n      psVar18[1].mutex.__size[0x15] = '\0';\n    }" { (expression_statement "psVar18[1].mutex.__size[0x15] = '\x01';" (assignment_expression "psVar18[1].mutex.__size[0x15] = '\x01'" (subscript_expression "psVar18[1].mutex.__size[0x15]" (field_expression "psVar18[1].mutex.__size" (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (psStack_78 == (sqlite3 *)0x0) {\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" if (parenthesized_expression "(psStack_78 == (sqlite3 *)0x0)" ( (binary_expression "psStack_78 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        psStack_170 = psStack_78;\nLAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);\n        psVar6 = (sqlite3 *)p;\n        if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\n      }" { (expression_statement "psStack_170 = psStack_78;" (assignment_expression "psStack_170 = psStack_78" identifier = identifier) ;) (labeled_statement "LAB_000d7410:\n        p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);" statement_identifier : (expression_statement "p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130);" (assignment_expression "p = (sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130)" identifier = (cast_expression "(sqlite3_backup *)\n            (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130)" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(psVar18,&iStack_130)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" ( (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x1cfc" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" * (cast_expression "(int *)(puStack_198 + -0x7c94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7c94)" ( (binary_expression "puStack_198 + -0x7c94" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,&iStack_130)" ( identifier , (pointer_expression "&iStack_130" & identifier) ))))) ;)) (expression_statement "psVar6 = (sqlite3 *)p;" (assignment_expression "psVar6 = (sqlite3 *)p" identifier = (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (iStack_130 != 0) {\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (compound_statement "{\n          in_a3 = (sqlite3 *)0x0;\n          if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);\n          in_a2 = (sqlite3 *)0x1;\n          psVar27 = (sqlite3 *)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);\n          psVar18[1].mutex.__size[0x15] = '\0';\n          if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" { (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3) {\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" if (parenthesized_expression "(*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3)" ( (binary_expression "*(int *)**(undefined4 **)((int)&psVar18->mutex + 4) < 3" (pointer_expression "*(int *)**(undefined4 **)((int)&psVar18->mutex + 4)" * (cast_expression "(int *)**(undefined4 **)((int)&psVar18->mutex + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)((int)&psVar18->mutex + 4)" * (pointer_expression "*(undefined4 **)((int)&psVar18->mutex + 4)" * (cast_expression "(undefined4 **)((int)&psVar18->mutex + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar18->mutex + 4)" ( (binary_expression "(int)&psVar18->mutex + 4" (cast_expression "(int)&psVar18->mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18->mutex" & (field_expression "psVar18->mutex" identifier -> field_identifier))) + number_literal) ))))))) < number_literal) )) (compound_statement "{\n            if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);\n          }" { (if_statement "if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;" if (parenthesized_expression "((sqlite3 *)p == (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)p == (sqlite3 *)0x0" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d74f0;" goto statement_identifier ;)) (labeled_statement "LAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);" statement_identifier : (expression_statement "(**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30);" (call_expression "(**(code **)(puStack_198 + -0x7b20))((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "((undefined1 *)((int)&psVar18[2].mutex + 4),0,0x30)" ( (cast_expression "(undefined1 *)((int)&psVar18[2].mutex + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar18[2].mutex + 4)" ( (binary_expression "(int)&psVar18[2].mutex + 4" (cast_expression "(int)&psVar18[2].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[2].mutex" & (field_expression "psVar18[2].mutex" (subscript_expression "psVar18[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))) , number_literal , number_literal ))) ;)) }) (else_clause "else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" else (compound_statement "{\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n            puVar25 = puStack_198;\n            if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;\n            if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }\n            if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" { (expression_statement "uStack_1a0 = uStack_1a0 & 0xffffffff;" (assignment_expression "uStack_1a0 = uStack_1a0 & 0xffffffff" identifier = (binary_expression "uStack_1a0 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))()" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xb40" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (if_statement "if ((sqlite3 *)p != (sqlite3 *)0x0) goto LAB_000d8034;" if (parenthesized_expression "((sqlite3 *)p != (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)p != (sqlite3 *)0x0" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d8034;" goto statement_identifier ;)) (labeled_statement "LAB_000d74f0:\n            psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);" statement_identifier : (expression_statement "psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);" (assignment_expression "psStack_168 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14)" identifier = (pointer_expression "*(sqlite3 **)((int)&psVar18[2].mutex + 0x14)" * (cast_expression "(sqlite3 **)((int)&psVar18[2].mutex + 0x14)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar18[2].mutex + 0x14)" ( (binary_expression "(int)&psVar18[2].mutex + 0x14" (cast_expression "(int)&psVar18[2].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[2].mutex" & (field_expression "psVar18[2].mutex" (subscript_expression "psVar18[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;)) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if (psStack_168 == (sqlite3 *)0x0) {\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }\n            else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" if (parenthesized_expression "(psStack_168 == (sqlite3 *)0x0)" ( (binary_expression "psStack_168 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;\n              psVar27 = unaff_s5;\n              psVar6 = psVar28;\n              if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);\n              unaff_s5 = psVar27;\n            }" { (if_statement "if (psStack_170 == (sqlite3 *)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }" if (parenthesized_expression "(psStack_170 == (sqlite3 *)0x0)" ( (binary_expression "psStack_170 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                puStack_164 = (undefined4 *)0x0;\n                psVar27 = unaff_s5;\n                psVar6 = (sqlite3 *)0x0;\n                goto LAB_000d8010;\n              }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar27 = unaff_s5;" (assignment_expression "psVar27 = unaff_s5" identifier = identifier) ;) (expression_statement "psVar6 = (sqlite3 *)0x0;" (assignment_expression "psVar6 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d7f78:\n              p = (sqlite3_backup *)psStack_170;" statement_identifier : (expression_statement "p = (sqlite3_backup *)psStack_170;" (assignment_expression "p = (sqlite3_backup *)psStack_170" identifier = (cast_expression "(sqlite3_backup *)psStack_170" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "psVar27 = unaff_s5;" (assignment_expression "psVar27 = unaff_s5" identifier = identifier) ;) (expression_statement "psVar6 = psVar28;" (assignment_expression "psVar6 = psVar28" identifier = identifier) ;) (if_statement "if (1 < (int)psStack_170) {\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }" if (parenthesized_expression "(1 < (int)psStack_170)" ( (binary_expression "1 < (int)psStack_170" number_literal < (cast_expression "(int)psStack_170" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                sqlite3_randomness(4,&pVStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                in_a3 = (sqlite3 *)&DAT_00000004;\n                psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);\n                puVar25 = puStack_198;\n                if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }\n              }" { (expression_statement "sqlite3_randomness(4,&pVStack_120);" (call_expression "sqlite3_randomness(4,&pVStack_120)" identifier (argument_list "(4,&pVStack_120)" ( number_literal , (pointer_expression "&pVStack_120" & identifier) ))) ;) (expression_statement "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(4,uStack_1a0._4_4_)" identifier (argument_list "(4,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "in_a3 = (sqlite3 *)&DAT_00000004;" (assignment_expression "in_a3 = (sqlite3 *)&DAT_00000004" identifier = (cast_expression "(sqlite3 *)&DAT_00000004" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000004" & identifier))) ;) (expression_statement "psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188);" (assignment_expression "psVar6 = (sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188)" identifier = (cast_expression "(sqlite3 *)\n                         (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                   (psVar18,psStack_18c,psStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,psStack_18c,psStack_188)" ( identifier , identifier , identifier ))))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if (psVar6 == (sqlite3 *)0x0) {\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }" if (parenthesized_expression "(psVar6 == (sqlite3 *)0x0)" ( (binary_expression "psVar6 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);\n                  puVar25 = puStack_198;\n                }" { (if_statement "if ((sqlite3 *)p == (sqlite3 *)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }" if (parenthesized_expression "((sqlite3 *)p == (sqlite3 *)0x3)" ( (binary_expression "(sqlite3 *)p == (sqlite3 *)0x3" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x3" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);\n                    in_a3 = (sqlite3 *)0x0;\n                    psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);\n                  }" { (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(psVar18,pVStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7110)" ( (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7110" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" * (cast_expression "(int *)(puStack_198 + -0x7d50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d50)" ( (binary_expression "puStack_198 + -0x7d50" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,pVStack_120)" ( identifier , identifier ))) ;) (expression_statement "in_a3 = (sqlite3 *)0x0;" (assignment_expression "in_a3 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner);" (assignment_expression "psVar6 = (sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner)" identifier = (cast_expression "(sqlite3 *)\n                             (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                       ((psVar18->mutex).__data.__owner)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__owner)" ( (field_expression "(psVar18->mutex).__data.__owner" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) ))))) ;) })) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18,4,4)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,4,4)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) })) })) (labeled_statement "LAB_000d8010:\n              (**(code **)(puVar25 + -0x7fa8))(puStack_164);" statement_identifier : (expression_statement "(**(code **)(puVar25 + -0x7fa8))(puStack_164);" (call_expression "(**(code **)(puVar25 + -0x7fa8))(puStack_164)" (parenthesized_expression "(**(code **)(puVar25 + -0x7fa8))" ( (pointer_expression "**(code **)(puVar25 + -0x7fa8)" * (pointer_expression "*(code **)(puVar25 + -0x7fa8)" * (cast_expression "(code **)(puVar25 + -0x7fa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar25 + -0x7fa8)" ( (binary_expression "puVar25 + -0x7fa8" identifier + number_literal) ))))) )) (argument_list "(puStack_164)" ( identifier ))) ;)) (expression_statement "unaff_s5 = psVar27;" (assignment_expression "unaff_s5 = psVar27" identifier = identifier) ;) }) (else_clause "else {\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" else (compound_statement "{\n              uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);\n              psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);\n              if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" { (expression_statement "uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12);" (assignment_expression "uVar13 = (uint)*(ushort *)((int)&psVar18[2].mutex + 0x12)" identifier = (binary_expression "(uint)*(ushort *)((int)&psVar18[2].mutex + 0x12)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)((int)&psVar18[2].mutex + 0x12)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar18[2].mutex + 0x12)" ( (binary_expression "(int)&psVar18[2].mutex + 0x12" (cast_expression "(int)&psVar18[2].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[2].mutex" & (field_expression "psVar18[2].mutex" (subscript_expression "psVar18[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00);" (assignment_expression "psStack_15c = (sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00)" identifier = (cast_expression "(sqlite3 *)((uVar13 & 1) << 0x10 | uVar13 & 0xfe00)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uVar13 & 1) << 0x10 | uVar13 & 0xfe00)" ( (binary_expression "(uVar13 & 1) << 0x10 | uVar13 & 0xfe00" (binary_expression "(uVar13 & 1) << 0x10" (parenthesized_expression "(uVar13 & 1)" ( (binary_expression "uVar13 & 1" identifier & number_literal) )) << number_literal) | (binary_expression "uVar13 & 0xfe00" identifier & number_literal)) )))) ;) (if_statement "if (psStack_15c == (sqlite3 *)&_gp) {\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" if (parenthesized_expression "(psStack_15c == (sqlite3 *)&_gp)" ( (binary_expression "psStack_15c == (sqlite3 *)&_gp" identifier == (cast_expression "(sqlite3 *)&_gp" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&_gp" & identifier))) )) (compound_statement "{\n                iVar26 = **(int **)((int)&psVar18[1].mutex + 8);\n                p = (sqlite3_backup *)0x1;\n                iStack_154 = iVar26;\n                if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" { (expression_statement "iVar26 = **(int **)((int)&psVar18[1].mutex + 8);" (assignment_expression "iVar26 = **(int **)((int)&psVar18[1].mutex + 8)" identifier = (pointer_expression "**(int **)((int)&psVar18[1].mutex + 8)" * (pointer_expression "*(int **)((int)&psVar18[1].mutex + 8)" * (cast_expression "(int **)((int)&psVar18[1].mutex + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar18[1].mutex + 8)" ( (binary_expression "(int)&psVar18[1].mutex + 8" (cast_expression "(int)&psVar18[1].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[1].mutex" & (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier))) + number_literal) )))))) ;) (expression_statement "p = (sqlite3_backup *)0x1;" (assignment_expression "p = (sqlite3_backup *)0x1" identifier = (cast_expression "(sqlite3_backup *)0x1" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iStack_154 = iVar26;" (assignment_expression "iStack_154 = iVar26" identifier = identifier) ;) (if_statement "if (*(sqlite3 **)(iVar26 + 0x60) < psStack_168) {\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }" if (parenthesized_expression "(*(sqlite3 **)(iVar26 + 0x60) < psStack_168)" ( (binary_expression "*(sqlite3 **)(iVar26 + 0x60) < psStack_168" (pointer_expression "*(sqlite3 **)(iVar26 + 0x60)" * (cast_expression "(sqlite3 **)(iVar26 + 0x60)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar26 + 0x60)" ( (binary_expression "iVar26 + 0x60" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                  psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;\n                  unaff_s5 = (sqlite3 *)0x1;\n                  psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = psStack_168;\n                  nPage = (int)psVar28;\n                  psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);\n                  psStack_168 = unaff_s3;\n                  if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }\n                }" { (expression_statement "psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock;" (assignment_expression "psStack_140 = (sqlite3 *)psVar18[3].mutex.__data.__lock" identifier = (cast_expression "(sqlite3 *)psVar18[3].mutex.__data.__lock" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "psVar18[3].mutex.__data.__lock" (field_expression "psVar18[3].mutex.__data" (field_expression "psVar18[3].mutex" (subscript_expression "psVar18[3]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier))) ;) (expression_statement "unaff_s5 = (sqlite3 *)0x1;" (assignment_expression "unaff_s5 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);" (assignment_expression "psStack_184 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" identifier = (cast_expression "(sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "unaff_s3 = psStack_168;" (assignment_expression "unaff_s3 = psStack_168" identifier = identifier) ;) (expression_statement "nPage = (int)psVar28;" (assignment_expression "nPage = (int)psVar28" identifier = (cast_expression "(int)psVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);" (assignment_expression "psStack_168 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" identifier = (cast_expression "(sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  } while ((sqlite3 *)p != (sqlite3 *)&DAT_00000005);" do (compound_statement "{\n                    psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);\n                    unaff_s2 = (sqlite3 *)psVar23->nChange;\n                    psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);\n                    psVar27 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }\n                    p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                  }" { (expression_statement "psVar23 = (sqlite3 *)(iVar26 + (int)p * 4);" (assignment_expression "psVar23 = (sqlite3 *)(iVar26 + (int)p * 4)" identifier = (cast_expression "(sqlite3 *)(iVar26 + (int)p * 4)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + (int)p * 4)" ( (binary_expression "iVar26 + (int)p * 4" identifier + (binary_expression "(int)p * 4" (cast_expression "(int)p" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "unaff_s2 = (sqlite3 *)psVar23->nChange;" (assignment_expression "unaff_s2 = (sqlite3 *)psVar23->nChange" identifier = (cast_expression "(sqlite3 *)psVar23->nChange" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "psVar23->nChange" identifier -> field_identifier))) ;) (expression_statement "psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3);" (assignment_expression "psVar6 = (sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3)" identifier = (cast_expression "(sqlite3 *)((int)&((sqlite3 *)p)->pVfs + 3)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&((sqlite3 *)p)->pVfs + 3)" ( (binary_expression "(int)&((sqlite3 *)p)->pVfs + 3" (cast_expression "(int)&((sqlite3 *)p)->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((sqlite3 *)p)->pVfs" & (field_expression "((sqlite3 *)p)->pVfs" (parenthesized_expression "((sqlite3 *)p)" ( (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) + number_literal) )))) ;) (expression_statement "psVar27 = unaff_s5;" (assignment_expression "psVar27 = unaff_s5" identifier = identifier) ;) (if_statement "if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }" if (parenthesized_expression "(unaff_s2 < unaff_s3)" ( (binary_expression "unaff_s2 < unaff_s3" identifier < identifier) )) (compound_statement "{\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      psStack_16c = psVar6;\n                      nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }\n                    }" { (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "psStack_16c = psVar6;" (assignment_expression "psStack_16c = psVar6" identifier = identifier) ;) (expression_statement "nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188);" (assignment_expression "nPage = (*(code *)psStack_184)(psVar18,psStack_18c,psStack_188)" identifier = (call_expression "(*(code *)psStack_184)(psVar18,psStack_18c,psStack_188)" (parenthesized_expression "(*(code *)psStack_184)" ( (pointer_expression "*(code *)psStack_184" * (cast_expression "(code *)psStack_184" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(psVar18,psStack_18c,psStack_188)" ( identifier , identifier , identifier )))) ;) (if_statement "if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }\n                      else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }" if (parenthesized_expression "((sqlite3 *)nPage == (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)nPage == (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        psVar19 = (sqlite3 *)0xffffffff;\n                        if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }\n                        psVar23->nChange = (int)psVar19;\n                        (*(code *)psStack_168)(psVar18,psStack_16c,1);\n                        in_a3 = psVar6;\n                        puVar25 = puStack_198;\n                      }" { (expression_statement "psVar19 = (sqlite3 *)0xffffffff;" (assignment_expression "psVar19 = (sqlite3 *)0xffffffff" identifier = (cast_expression "(sqlite3 *)0xffffffff" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((sqlite3 *)p == (sqlite3 *)0x1) {\n                          psVar19 = unaff_s3;\n                        }" if (parenthesized_expression "((sqlite3 *)p == (sqlite3 *)0x1)" ( (binary_expression "(sqlite3 *)p == (sqlite3 *)0x1" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                          psVar19 = unaff_s3;\n                        }" { (expression_statement "psVar19 = unaff_s3;" (assignment_expression "psVar19 = unaff_s3" identifier = identifier) ;) })) (expression_statement "psVar23->nChange = (int)psVar19;" (assignment_expression "psVar23->nChange = (int)psVar19" (field_expression "psVar23->nChange" identifier -> field_identifier) = (cast_expression "(int)psVar19" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "(*(code *)psStack_168)(psVar18,psStack_16c,1);" (call_expression "(*(code *)psStack_168)(psVar18,psStack_16c,1)" (parenthesized_expression "(*(code *)psStack_168)" ( (pointer_expression "*(code *)psStack_168" * (cast_expression "(code *)psStack_168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(psVar18,psStack_16c,1)" ( identifier , identifier , number_literal ))) ;) (expression_statement "in_a3 = psVar6;" (assignment_expression "in_a3 = psVar6" identifier = identifier) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) }) (else_clause "else {\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }" else (compound_statement "{\n                        in_a3 = psVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar25 = puStack_198;\n                        if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }\n                        psStack_18c = (sqlite3 *)0x0;\n                      }" { (expression_statement "in_a3 = psVar6;" (assignment_expression "in_a3 = psVar6" identifier = identifier) ;) (expression_statement "unaff_s3 = unaff_s2;" (assignment_expression "unaff_s3 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if ((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }" if (parenthesized_expression "((sqlite3 *)nPage != (sqlite3 *)&DAT_00000005)" ( (binary_expression "(sqlite3 *)nPage != (sqlite3 *)&DAT_00000005" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) )) (compound_statement "{\n                          puStack_164 = (undefined4 *)0x0;\n                          psVar6 = (sqlite3 *)nPage;\n                          goto LAB_000d8010;\n                        }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar6 = (sqlite3 *)nPage;" (assignment_expression "psVar6 = (sqlite3 *)nPage" identifier = (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "psStack_18c = (sqlite3 *)0x0;" (assignment_expression "psStack_18c = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) })) (expression_statement "p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);" (assignment_expression "p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1)" identifier = (cast_expression "(sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1)" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&((sqlite3 *)p)->pVfs + 1)" ( (binary_expression "(int)&((sqlite3 *)p)->pVfs + 1" (cast_expression "(int)&((sqlite3 *)p)->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((sqlite3 *)p)->pVfs" & (field_expression "((sqlite3 *)p)->pVfs" (parenthesized_expression "((sqlite3 *)p)" ( (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) + number_literal) )))) ;) }) while (parenthesized_expression "((sqlite3 *)p != (sqlite3 *)&DAT_00000005)" ( (binary_expression "(sqlite3 *)p != (sqlite3 *)&DAT_00000005" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) )) ;) (expression_statement "psStack_168 = unaff_s3;" (assignment_expression "psStack_168 = unaff_s3" identifier = identifier) ;) (if_statement "if (*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3) {\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }" if (parenthesized_expression "(*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3)" ( (binary_expression "*(sqlite3 **)(iStack_154 + 0x60) < unaff_s3" (pointer_expression "*(sqlite3 **)(iStack_154 + 0x60)" * (cast_expression "(sqlite3 **)(iStack_154 + 0x60)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                    p = *(sqlite3_backup **)(iStack_154 + 0x60);\n                    psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);\n                    psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);\n                    psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);\n                    unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);\n                    psStack_134 = psVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = psVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    psVar6 = (sqlite3 *)&DAT_00000007;\n                    puVar25 = puStack_198;\n                  }" { (expression_statement "p = *(sqlite3_backup **)(iStack_154 + 0x60);" (assignment_expression "p = *(sqlite3_backup **)(iStack_154 + 0x60)" identifier = (pointer_expression "*(sqlite3_backup **)(iStack_154 + 0x60)" * (cast_expression "(sqlite3_backup **)(iStack_154 + 0x60)" ( (type_descriptor "sqlite3_backup **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14);" (assignment_expression "psVar6 = *(sqlite3 **)((int)&psVar18[2].mutex + 0x14)" identifier = (pointer_expression "*(sqlite3 **)((int)&psVar18[2].mutex + 0x14)" * (cast_expression "(sqlite3 **)((int)&psVar18[2].mutex + 0x14)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar18[2].mutex + 0x14)" ( (binary_expression "(int)&psVar18[2].mutex + 0x14" (cast_expression "(int)&psVar18[2].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[2].mutex" & (field_expression "psVar18[2].mutex" (subscript_expression "psVar18[2]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) ;) (expression_statement "psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc);" (assignment_expression "psStack_158 = (sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc)" identifier = (cast_expression "(sqlite3 *)\n                                  ((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc)" ( (binary_expression "(uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U) >> 0xc" (call_expression "(uint)((int)&((BtLock *)&psVar6->flags)->pBtree + 1U)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)&((BtLock *)&psVar6->flags)->pBtree + 1U)" ( (binary_expression "(int)&((BtLock *)&psVar6->flags)->pBtree + 1U" (cast_expression "(int)&((BtLock *)&psVar6->flags)->pBtree" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((BtLock *)&psVar6->flags)->pBtree" & (field_expression "((BtLock *)&psVar6->flags)->pBtree" (parenthesized_expression "((BtLock *)&psVar6->flags)" ( (cast_expression "(BtLock *)&psVar6->flags" ( (type_descriptor "BtLock *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar6->flags" & (field_expression "psVar6->flags" identifier -> field_identifier))) )) -> field_identifier))) + number_literal) ))) >> number_literal) )))) ;) (expression_statement "psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1);" (assignment_expression "psVar23 = (sqlite3 *)((int)&psStack_158->pVfs + 1)" identifier = (cast_expression "(sqlite3 *)((int)&psStack_158->pVfs + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psStack_158->pVfs + 1)" ( (binary_expression "(int)&psStack_158->pVfs + 1" (cast_expression "(int)&psStack_158->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psStack_158->pVfs" & (field_expression "psStack_158->pVfs" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2);" (assignment_expression "unaff_s2 = (sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2)" identifier = (cast_expression "(sqlite3 *)\n                               (((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2)" ( (binary_expression "((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e) * 2" (parenthesized_expression "((int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e)" ( (binary_expression "(int)psVar6->aLimit + (int)psStack_158 * 10 + -0x5e" (binary_expression "(int)psVar6->aLimit + (int)psStack_158 * 10" (cast_expression "(int)psVar6->aLimit" ( (type_descriptor "int" primitive_type) ) (field_expression "psVar6->aLimit" identifier -> field_identifier)) + (binary_expression "(int)psStack_158 * 10" (cast_expression "(int)psStack_158" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) )) * number_literal) )))) ;) (expression_statement "psStack_134 = psVar6;" (assignment_expression "psStack_134 = psVar6" identifier = identifier) ;) (expression_statement "puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);" (assignment_expression "puVar8 = (undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" identifier = (cast_expression "(undefined4 *)\n                             (**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar25 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" (parenthesized_expression "(**(code **)(puVar25 + -0x7f50))" ( (pointer_expression "**(code **)(puVar25 + -0x7f50)" * (pointer_expression "*(code **)(puVar25 + -0x7f50)" * (cast_expression "(code **)(puVar25 + -0x7f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar25 + -0x7f50)" ( (binary_expression "puVar25 + -0x7f50" identifier + number_literal) ))))) )) (argument_list "((int)unaff_s2 >> 0x1f,unaff_s2)" ( (binary_expression "(int)unaff_s2 >> 0x1f" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) , identifier ))))) ;) (expression_statement "unaff_s3 = psVar6;" (assignment_expression "unaff_s3 = psVar6" identifier = identifier) ;) (expression_statement "puStack_164 = puVar8;" (assignment_expression "puStack_164 = puVar8" identifier = identifier) ;) (if_statement "if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }" if (parenthesized_expression "(puVar8 != (undefined4 *)0x0)" ( (binary_expression "puVar8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = psVar23;\n                      if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }\n                      unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);\n                      psVar23 = (sqlite3 *)(uint)(p < psVar23);\n                      puVar25 = puStack_198;\n                      psStack_16c = (sqlite3 *)p;\n                      if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }\n                      (**(code **)(puVar25 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      in_a3 = (sqlite3 *)0x3;\n                      psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);\n                      psVar27 = psStack_6c;\n                      if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);\n                      *(sqlite3 **)(iStack_154 + 0x80) = psStack_168;\n                      psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);\n                      nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);\n                      puVar25 = puStack_198;\n                      if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);\n                      puVar25 = puStack_198;\n                      goto LAB_000d7648;\n                    }" { (expression_statement "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(puVar8,0,unaff_s2)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar8[1] = psVar23;" (assignment_expression "puVar8[1] = psVar23" (subscript_expression "puVar8[1]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((sqlite3 *)0x1000 < psVar6) {\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }" if (parenthesized_expression "((sqlite3 *)0x1000 < psVar6)" ( (binary_expression "(sqlite3 *)0x1000 < psVar6" (cast_expression "(sqlite3 *)0x1000" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) < identifier) )) (compound_statement "{\n                        unaff_s3 = (sqlite3 *)0x1000;\n                      }" { (expression_statement "unaff_s3 = (sqlite3 *)0x1000;" (assignment_expression "unaff_s3 = (sqlite3 *)0x1000" identifier = (cast_expression "(sqlite3 *)0x1000" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);" (assignment_expression "unaff_s2 = (sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" identifier = (cast_expression "(sqlite3 *)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7f50))" ( (pointer_expression "**(code **)(puStack_198 + -0x7f50)" * (pointer_expression "*(code **)(puStack_198 + -0x7f50)" * (cast_expression "(code **)(puStack_198 + -0x7f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7f50)" ( (binary_expression "puStack_198 + -0x7f50" identifier + number_literal) ))))) )) (argument_list "(0,(int)unaff_s3 << 1)" ( number_literal , (binary_expression "(int)unaff_s3 << 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))))) ;) (if_statement "if (unaff_s2 == (sqlite3 *)0x0) {\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }" if (parenthesized_expression "(unaff_s2 == (sqlite3 *)0x0)" ( (binary_expression "unaff_s2 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        nPage = (int)&DAT_00000007;\nLAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);\n                        (*(code *)p)(unaff_s2);\n                        (*(code *)p)(puStack_164);\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        goto LAB_000d7644;\n                      }" { (expression_statement "nPage = (int)&DAT_00000007;" (assignment_expression "nPage = (int)&DAT_00000007" identifier = (cast_expression "(int)&DAT_00000007" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (labeled_statement "LAB_000d799c:\n                        p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);" statement_identifier : (expression_statement "p = *(sqlite3_backup **)(puStack_198 + -0x7fa8);" (assignment_expression "p = *(sqlite3_backup **)(puStack_198 + -0x7fa8)" identifier = (pointer_expression "*(sqlite3_backup **)(puStack_198 + -0x7fa8)" * (cast_expression "(sqlite3_backup **)(puStack_198 + -0x7fa8)" ( (type_descriptor "sqlite3_backup **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7fa8)" ( (binary_expression "puStack_198 + -0x7fa8" identifier + number_literal) ))))) ;)) (expression_statement "(*(code *)p)(unaff_s2);" (call_expression "(*(code *)p)(unaff_s2)" (parenthesized_expression "(*(code *)p)" ( (pointer_expression "*(code *)p" * (cast_expression "(code *)p" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "(*(code *)p)(puStack_164);" (call_expression "(*(code *)p)(puStack_164)" (parenthesized_expression "(*(code *)p)" ( (pointer_expression "*(code *)p" * (cast_expression "(code *)p" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puStack_164)" ( identifier ))) ;) (expression_statement "psVar27 = unaff_s5;" (assignment_expression "psVar27 = unaff_s5" identifier = identifier) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (goto_statement "goto LAB_000d7644;" goto statement_identifier ;) })) (expression_statement "p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc);" (assignment_expression "p = (sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc)" identifier = (cast_expression "(sqlite3_backup *)\n                          ((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc)" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc)" ( (binary_expression "(uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2) >> 0xc" (call_expression "(uint)((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2)" ( (binary_expression "(int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree + 2" (cast_expression "(int)&((BtLock *)&((sqlite3 *)p)->flags)->pBtree" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((BtLock *)&((sqlite3 *)p)->flags)->pBtree" & (field_expression "((BtLock *)&((sqlite3 *)p)->flags)->pBtree" (parenthesized_expression "((BtLock *)&((sqlite3 *)p)->flags)" ( (cast_expression "(BtLock *)&((sqlite3 *)p)->flags" ( (type_descriptor "BtLock *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&((sqlite3 *)p)->flags" & (field_expression "((sqlite3 *)p)->flags" (parenthesized_expression "((sqlite3 *)p)" ( (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) )) -> field_identifier))) + number_literal) ))) >> number_literal) )))) ;) (expression_statement "psVar23 = (sqlite3 *)(uint)(p < psVar23);" (assignment_expression "psVar23 = (sqlite3 *)(uint)(p < psVar23)" identifier = (cast_expression "(sqlite3 *)(uint)(p < psVar23)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(p < psVar23)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(p < psVar23)" ( (binary_expression "p < psVar23" identifier < identifier) ))))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (expression_statement "psStack_16c = (sqlite3 *)p;" (assignment_expression "psStack_16c = (sqlite3 *)p" identifier = (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (psVar23 != (sqlite3 *)0x0) {\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }" if (parenthesized_expression "(psVar23 != (sqlite3 *)0x0)" ( (binary_expression "psVar23 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        puVar8 = puStack_164 + (int)p * 5;\n                        ppVStack_148 = &pVStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        psVar27 = (sqlite3 *)p;\n                        psStack_160 = psVar18;\n                        psStack_13c = psVar28;\n                        do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);\n                      }" { (expression_statement "puVar8 = puStack_164 + (int)p * 5;" (assignment_expression "puVar8 = puStack_164 + (int)p * 5" identifier = (binary_expression "puStack_164 + (int)p * 5" identifier + (binary_expression "(int)p * 5" (cast_expression "(int)p" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "ppVStack_148 = &pVStack_120;" (assignment_expression "ppVStack_148 = &pVStack_120" identifier = (pointer_expression "&pVStack_120" & identifier)) ;) (expression_statement "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);" (assignment_expression "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" identifier = (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x2574)" ( (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x2574" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" * (cast_expression "(int *)(puStack_198 + -0x7c94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7c94)" ( (binary_expression "puStack_198 + -0x7c94" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);" (assignment_expression "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" identifier = (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7240)" ( (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7240" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" * (cast_expression "(int *)(puStack_198 + -0x7d50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d50)" ( (binary_expression "puStack_198 + -0x7d50" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "psVar27 = (sqlite3 *)p;" (assignment_expression "psVar27 = (sqlite3 *)p" identifier = (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "psStack_160 = psVar18;" (assignment_expression "psStack_160 = psVar18" identifier = identifier) ;) (expression_statement "psStack_13c = psVar28;" (assignment_expression "psStack_13c = psVar28" identifier = identifier) ;) (do_statement "do {\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        } while ((int)psStack_16c < (int)psStack_158);" do (compound_statement "{\n                          psStack_16c = psVar27;\n                          nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;\n                          psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;\n                          if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);\n                          pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);\n                          puStack_150 = puVar9;\n                          pVStack_11c = (Vdbe *)psStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = pDStack_118;\n                          puVar8[5] = psStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = pVStack_11c;\n                          puVar8 = puVar8 + 5;\n                          psVar18 = psStack_160;\n                          psVar28 = psStack_13c;\n                          psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);\n                        }" { (expression_statement "psStack_16c = psVar27;" (assignment_expression "psStack_16c = psVar27" identifier = identifier) ;) (expression_statement "nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148);" (assignment_expression "nPage = (*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148)" identifier = (call_expression "(*pcStack_14c)(psStack_160,psStack_16c,ppVStack_148)" (parenthesized_expression "(*pcStack_14c)" ( (pointer_expression "*pcStack_14c" * identifier) )) (argument_list "(psStack_160,psStack_16c,ppVStack_148)" ( identifier , identifier , identifier )))) ;) (expression_statement "psVar18 = psStack_160;" (assignment_expression "psVar18 = psStack_160" identifier = identifier) ;) (expression_statement "psVar28 = psStack_13c;" (assignment_expression "psVar28 = psStack_13c" identifier = identifier) ;) (if_statement "if ((sqlite3 *)nPage != (sqlite3 *)0x0) goto LAB_000d799c;" if (parenthesized_expression "((sqlite3 *)nPage != (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)nPage != (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d799c;" goto statement_identifier ;)) (expression_statement "psStack_184 = (sqlite3 *)&pVStack_11c->pPrev;" (assignment_expression "psStack_184 = (sqlite3 *)&pVStack_11c->pPrev" identifier = (cast_expression "(sqlite3 *)&pVStack_11c->pPrev" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pVStack_11c->pPrev" & (field_expression "pVStack_11c->pPrev" identifier -> field_identifier)))) ;) (if_statement "if (psStack_16c == psStack_158) {\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }\n                          else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }" if (parenthesized_expression "(psStack_16c == psStack_158)" ( (binary_expression "psStack_16c == psStack_158" identifier == identifier) )) (compound_statement "{\n                            unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);\n                          }" { (expression_statement "unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118);" (assignment_expression "unaff_s3 = (sqlite3 *)((int)psStack_134 - (int)pDStack_118)" identifier = (cast_expression "(sqlite3 *)((int)psStack_134 - (int)pDStack_118)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psStack_134 - (int)pDStack_118)" ( (binary_expression "(int)psStack_134 - (int)pDStack_118" (cast_expression "(int)psStack_134" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)pDStack_118" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) }) (else_clause "else {\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }" else (compound_statement "{\n                            unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);\n                          }" { (expression_statement "unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2);" (assignment_expression "unaff_s3 = (sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2)" identifier = (cast_expression "(sqlite3 *)((int)pVStack_120 - (int)psStack_184 >> 2)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pVStack_120 - (int)psStack_184 >> 2)" ( (binary_expression "(int)pVStack_120 - (int)psStack_184 >> 2" (binary_expression "(int)pVStack_120 - (int)psStack_184" (cast_expression "(int)pVStack_120" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)psStack_184" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) )))) ;) }))) (expression_statement "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2);" (assignment_expression "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2)" identifier = (cast_expression "(undefined2 *)\n                                   ((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2)" ( (binary_expression "(int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8 + (int)pDStack_118 * 2" (binary_expression "(int)puStack_164 +\n                                   puStack_164[1] * 0x14 + 8" (binary_expression "(int)puStack_164 +\n                                   puStack_164[1] * 0x14" (cast_expression "(int)puStack_164" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "puStack_164[1] * 0x14" (subscript_expression "puStack_164[1]" identifier [ number_literal ]) * number_literal)) + number_literal) + (binary_expression "(int)pDStack_118 * 2" (cast_expression "(int)pDStack_118" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1);" (assignment_expression "pDStack_118 = (Db *)((int)&pDStack_118->zDbSName + 1)" identifier = (cast_expression "(Db *)((int)&pDStack_118->zDbSName + 1)" ( (type_descriptor "Db *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pDStack_118->zDbSName + 1)" ( (binary_expression "(int)&pDStack_118->zDbSName + 1" (cast_expression "(int)&pDStack_118->zDbSName" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pDStack_118->zDbSName" & (field_expression "pDStack_118->zDbSName" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "puStack_150 = puVar9;" (assignment_expression "puStack_150 = puVar9" identifier = identifier) ;) (expression_statement "pVStack_11c = (Vdbe *)psStack_184;" (assignment_expression "pVStack_11c = (Vdbe *)psStack_184" identifier = (cast_expression "(Vdbe *)psStack_184" ( (type_descriptor "Vdbe *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((int)unaff_s3 < 1) {\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }\n                          else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }" if (parenthesized_expression "((int)unaff_s3 < 1)" ( (binary_expression "(int)unaff_s3 < 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                            psStack_12c = (sqlite3_vfs *)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            p = (sqlite3_backup *)0x1;\n                            puVar25 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;\n                            nPage = (int)&uStack_128;\n                            psVar23 = (sqlite3 *)&psStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);\n                          }" { (expression_statement "psStack_12c = (sqlite3_vfs *)0x0;" (assignment_expression "psStack_12c = (sqlite3_vfs *)0x0" identifier = (cast_expression "(sqlite3_vfs *)0x0" ( (type_descriptor "sqlite3_vfs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uStack_128 = uStack_128 & 0xffffffff;" (assignment_expression "uStack_128 = uStack_128 & 0xffffffff" identifier = (binary_expression "uStack_128 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(auStack_114,0,0x68)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "p = (sqlite3_backup *)0x1;" (assignment_expression "p = (sqlite3_backup *)0x1" identifier = (cast_expression "(sqlite3_backup *)0x1" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (labeled_statement "LAB_000d78d0:\n                            unaff_s5 = (sqlite3 *)auStack_114;" statement_identifier : (expression_statement "unaff_s5 = (sqlite3 *)auStack_114;" (assignment_expression "unaff_s5 = (sqlite3 *)auStack_114" identifier = (cast_expression "(sqlite3 *)auStack_114" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "nPage = (int)&uStack_128;" (assignment_expression "nPage = (int)&uStack_128" identifier = (cast_expression "(int)&uStack_128" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_128" & identifier))) ;) (expression_statement "psVar23 = (sqlite3 *)&psStack_12c;" (assignment_expression "psVar23 = (sqlite3 *)&psStack_12c" identifier = (cast_expression "(sqlite3 *)&psStack_12c" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psStack_12c" & identifier))) ;) (do_statement "do {\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            } while (p < (sqlite3 *)&DAT_0000000d);" do (compound_statement "{\n                              if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }\n                              p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);\n                            }" { (if_statement "if (((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }" if (parenthesized_expression "(((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0)" ( (binary_expression "((int)unaff_s3 >> ((uint)p & 0x1f) & 1U) != 0" (parenthesized_expression "((int)unaff_s3 >> ((uint)p & 0x1f) & 1U)" ( (binary_expression "(int)unaff_s3 >> ((uint)p & 0x1f) & 1U" (binary_expression "(int)unaff_s3 >> ((uint)p & 0x1f)" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "((uint)p & 0x1f)" ( (binary_expression "(uint)p & 0x1f" (cast_expression "(uint)p" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) != number_literal) )) (compound_statement "{\n                                uStack_1a0 = CONCAT44(psVar23,unaff_s2);\n                                in_a3 = (sqlite3 *)nPage;\n                                (*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);\n                                puVar25 = puStack_198;\n                              }" { (expression_statement "uStack_1a0 = CONCAT44(psVar23,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(psVar23,unaff_s2)" identifier = (call_expression "CONCAT44(psVar23,unaff_s2)" identifier (argument_list "(psVar23,unaff_s2)" ( identifier , identifier )))) ;) (expression_statement "in_a3 = (sqlite3 *)nPage;" (assignment_expression "in_a3 = (sqlite3 *)nPage" identifier = (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b]);" (call_expression "(*pcStack_144)(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b])" (parenthesized_expression "(*pcStack_144)" ( (pointer_expression "*pcStack_144" * identifier) )) (argument_list "(psStack_184,auStack_114[(int)p * 2 + 1],\n                                               unaff_s5->aLimit[(int)p * 2 + -0x1b])" ( identifier , (subscript_expression "auStack_114[(int)p * 2 + 1]" identifier [ (binary_expression "(int)p * 2 + 1" (binary_expression "(int)p * 2" (cast_expression "(int)p" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) , (subscript_expression "unaff_s5->aLimit[(int)p * 2 + -0x1b]" (field_expression "unaff_s5->aLimit" identifier -> field_identifier) [ (binary_expression "(int)p * 2 + -0x1b" (binary_expression "(int)p * 2" (cast_expression "(int)p" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) ))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) })) (expression_statement "p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1);" (assignment_expression "p = (sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1)" identifier = (cast_expression "(sqlite3_backup *)((int)&((sqlite3 *)p)->pVfs + 1)" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&((sqlite3 *)p)->pVfs + 1)" ( (binary_expression "(int)&((sqlite3 *)p)->pVfs + 1" (cast_expression "(int)&((sqlite3 *)p)->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((sqlite3 *)p)->pVfs" & (field_expression "((sqlite3 *)p)->pVfs" (parenthesized_expression "((sqlite3 *)p)" ( (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) + number_literal) )))) ;) }) while (parenthesized_expression "(p < (sqlite3 *)&DAT_0000000d)" ( (binary_expression "p < (sqlite3 *)&DAT_0000000d" identifier < (cast_expression "(sqlite3 *)&DAT_0000000d" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000000d" & identifier))) )) ;) }) (else_clause "else {\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }" else (compound_statement "{\n                            psVar27 = (sqlite3 *)0x0;\n                            puVar15 = puVar9;\n                            do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (sqlite3 *)&psStack_12c;\n                            nPage = 0;\n                            puVar25 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);\n                            p = (sqlite3_backup *)(uVar13 + 1);\n                            puVar8 = puStack_138;\n                            if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;\n                          }" { (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "puVar15 = puVar9;" (assignment_expression "puVar15 = puVar9" identifier = identifier) ;) (do_statement "do {\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            } while (psVar27 != unaff_s3);" do (compound_statement "{\n                              *puVar15 = (short)psVar27;\n                              psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);\n                              puVar15 = puVar15 + 1;\n                            }" { (expression_statement "*puVar15 = (short)psVar27;" (assignment_expression "*puVar15 = (short)psVar27" (pointer_expression "*puVar15" * identifier) = (cast_expression "(short)psVar27" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier)) ;) (expression_statement "psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1);" (assignment_expression "psVar27 = (sqlite3 *)((int)&psVar27->pVfs + 1)" identifier = (cast_expression "(sqlite3 *)((int)&psVar27->pVfs + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar27->pVfs + 1)" ( (binary_expression "(int)&psVar27->pVfs + 1" (cast_expression "(int)&psVar27->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar27->pVfs" & (field_expression "psVar27->pVfs" identifier -> field_identifier))) + number_literal) )))) ;) (expression_statement "puVar15 = puVar15 + 1;" (assignment_expression "puVar15 = puVar15 + 1" identifier = (binary_expression "puVar15 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(psVar27 != unaff_s3)" ( (binary_expression "psVar27 != unaff_s3" identifier != identifier) )) ;) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(auStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(auStack_114,0,0x68)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "pcVar3 = pcStack_144;" (assignment_expression "pcVar3 = pcStack_144" identifier = identifier) ;) (expression_statement "unaff_s5 = (sqlite3 *)&psStack_12c;" (assignment_expression "unaff_s5 = (sqlite3 *)&psStack_12c" identifier = (cast_expression "(sqlite3 *)&psStack_12c" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psStack_12c" & identifier))) ;) (expression_statement "nPage = 0;" (assignment_expression "nPage = 0" identifier = number_literal) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (expression_statement "puStack_138 = puVar8;" (assignment_expression "puStack_138 = puVar8" identifier = identifier) ;) (do_statement "do {\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            } while ((sqlite3 *)nPage != unaff_s3);" do (compound_statement "{\n                              psStack_12c = (sqlite3_vfs *)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }\n                              *(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;\n                              *(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;\n                              nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;\n                              puVar9 = puVar9 + 1;\n                            }" { (expression_statement "psStack_12c = (sqlite3_vfs *)0x1;" (assignment_expression "psStack_12c = (sqlite3_vfs *)0x1" identifier = (cast_expression "(sqlite3_vfs *)0x1" ( (type_descriptor "sqlite3_vfs *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);" (assignment_expression "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_)" identifier = (call_expression "CONCAT44(puVar9,uStack_128._4_4_)" identifier (argument_list "(puVar9,uStack_128._4_4_)" ( identifier , (field_expression "uStack_128._4_4_" identifier . field_identifier) )))) ;) (if_statement "if ((nPage & 1U) == 0) {\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }\n                              else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }" if (parenthesized_expression "((nPage & 1U) == 0)" ( (binary_expression "(nPage & 1U) == 0" (parenthesized_expression "(nPage & 1U)" ( (binary_expression "nPage & 1U" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                                uVar13 = 0;\n                                iVar26 = 0;\n                              }" { (expression_statement "uVar13 = 0;" (assignment_expression "uVar13 = 0" identifier = number_literal) ;) (expression_statement "iVar26 = 0;" (assignment_expression "iVar26 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }" else (compound_statement "{\n                                psVar23 = (sqlite3 *)auStack_114;\n                                uVar13 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);\n                                iVar26 = uVar13 * 8;\n                                puVar25 = puStack_198;\n                              }" { (expression_statement "psVar23 = (sqlite3 *)auStack_114;" (assignment_expression "psVar23 = (sqlite3 *)auStack_114" identifier = (cast_expression "(sqlite3 *)auStack_114" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar13 = 0;" (assignment_expression "uVar13 = 0" identifier = number_literal) ;) (do_statement "do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                } while ((nPage >> (uVar13 & 0x1f) & 1U) != 0);" do (compound_statement "{\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  in_a3 = (sqlite3 *)&uStack_128;\n                                  (*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);\n                                  uVar13 = uVar13 + 1;\n                                  psVar23 = (sqlite3 *)((int)psVar23 + 8);\n                                }" { (expression_statement "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2)" identifier = (call_expression "CONCAT44(unaff_s5,unaff_s2)" identifier (argument_list "(unaff_s5,unaff_s2)" ( identifier , identifier )))) ;) (expression_statement "in_a3 = (sqlite3 *)&uStack_128;" (assignment_expression "in_a3 = (sqlite3 *)&uStack_128" identifier = (cast_expression "(sqlite3 *)&uStack_128" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_128" & identifier))) ;) (expression_statement "(*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23);" (call_expression "(*pcVar3)(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(psStack_184,*(u32 *)((int)psVar23 + 4),*(u32 *)psVar23)" ( identifier , (pointer_expression "*(u32 *)((int)psVar23 + 4)" * (cast_expression "(u32 *)((int)psVar23 + 4)" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar23 + 4)" ( (binary_expression "(int)psVar23 + 4" (cast_expression "(int)psVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , (pointer_expression "*(u32 *)psVar23" * (cast_expression "(u32 *)psVar23" ( (type_descriptor "u32 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) ;) (expression_statement "uVar13 = uVar13 + 1;" (assignment_expression "uVar13 = uVar13 + 1" identifier = (binary_expression "uVar13 + 1" identifier + number_literal)) ;) (expression_statement "psVar23 = (sqlite3 *)((int)psVar23 + 8);" (assignment_expression "psVar23 = (sqlite3 *)((int)psVar23 + 8)" identifier = (cast_expression "(sqlite3 *)((int)psVar23 + 8)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)psVar23 + 8)" ( (binary_expression "(int)psVar23 + 8" (cast_expression "(int)psVar23" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "((nPage >> (uVar13 & 0x1f) & 1U) != 0)" ( (binary_expression "(nPage >> (uVar13 & 0x1f) & 1U) != 0" (parenthesized_expression "(nPage >> (uVar13 & 0x1f) & 1U)" ( (binary_expression "nPage >> (uVar13 & 0x1f) & 1U" (binary_expression "nPage >> (uVar13 & 0x1f)" identifier >> (parenthesized_expression "(uVar13 & 0x1f)" ( (binary_expression "uVar13 & 0x1f" identifier & number_literal) ))) & number_literal) )) != number_literal) )) ;) (expression_statement "iVar26 = uVar13 * 8;" (assignment_expression "iVar26 = uVar13 * 8" identifier = (binary_expression "uVar13 * 8" identifier * number_literal)) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) }))) (expression_statement "*(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_;" (assignment_expression "*(Vdbe **)((int)auStack_114 + iVar26 + 4) = uStack_128._0_4_" (pointer_expression "*(Vdbe **)((int)auStack_114 + iVar26 + 4)" * (cast_expression "(Vdbe **)((int)auStack_114 + iVar26 + 4)" ( (type_descriptor "Vdbe **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)auStack_114 + iVar26 + 4)" ( (binary_expression "(int)auStack_114 + iVar26 + 4" (binary_expression "(int)auStack_114 + iVar26" (cast_expression "(int)auStack_114" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (field_expression "uStack_128._0_4_" identifier . field_identifier)) ;) (expression_statement "*(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c;" (assignment_expression "*(sqlite3_vfs **)((int)auStack_114 + iVar26) = psStack_12c" (pointer_expression "*(sqlite3_vfs **)((int)auStack_114 + iVar26)" * (cast_expression "(sqlite3_vfs **)((int)auStack_114 + iVar26)" ( (type_descriptor "sqlite3_vfs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)auStack_114 + iVar26)" ( (binary_expression "(int)auStack_114 + iVar26" (cast_expression "(int)auStack_114" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "nPage = (int)&((sqlite3 *)nPage)->pVfs + 1;" (assignment_expression "nPage = (int)&((sqlite3 *)nPage)->pVfs + 1" identifier = (binary_expression "(int)&((sqlite3 *)nPage)->pVfs + 1" (cast_expression "(int)&((sqlite3 *)nPage)->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((sqlite3 *)nPage)->pVfs" & (field_expression "((sqlite3 *)nPage)->pVfs" (parenthesized_expression "((sqlite3 *)nPage)" ( (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )) -> field_identifier))) + number_literal)) ;) (expression_statement "puVar9 = puVar9 + 1;" (assignment_expression "puVar9 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((sqlite3 *)nPage != unaff_s3)" ( (binary_expression "(sqlite3 *)nPage != unaff_s3" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != identifier) )) ;) (expression_statement "p = (sqlite3_backup *)(uVar13 + 1);" (assignment_expression "p = (sqlite3_backup *)(uVar13 + 1)" identifier = (cast_expression "(sqlite3_backup *)(uVar13 + 1)" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar13 + 1)" ( (binary_expression "uVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "puVar8 = puStack_138;" (assignment_expression "puVar8 = puStack_138" identifier = identifier) ;) (if_statement "if (p < (sqlite3 *)&DAT_0000000d) goto LAB_000d78d0;" if (parenthesized_expression "(p < (sqlite3 *)&DAT_0000000d)" ( (binary_expression "p < (sqlite3 *)&DAT_0000000d" identifier < (cast_expression "(sqlite3 *)&DAT_0000000d" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000000d" & identifier))) )) (goto_statement "goto LAB_000d78d0;" goto statement_identifier ;)) }))) (expression_statement "puVar8[6] = pDStack_118;" (assignment_expression "puVar8[6] = pDStack_118" (subscript_expression "puVar8[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[5] = psStack_12c;" (assignment_expression "puVar8[5] = psStack_12c" (subscript_expression "puVar8[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[3] = puStack_150;" (assignment_expression "puVar8[3] = puStack_150" (subscript_expression "puVar8[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[4] = pVStack_11c;" (assignment_expression "puVar8[4] = pVStack_11c" (subscript_expression "puVar8[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8 = puVar8 + 5;" (assignment_expression "puVar8 = puVar8 + 5" identifier = (binary_expression "puVar8 + 5" identifier + number_literal)) ;) (expression_statement "psVar18 = psStack_160;" (assignment_expression "psVar18 = psStack_160" identifier = identifier) ;) (expression_statement "psVar28 = psStack_13c;" (assignment_expression "psVar28 = psStack_13c" identifier = identifier) ;) (expression_statement "psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1);" (assignment_expression "psVar27 = (sqlite3 *)((int)&psStack_16c->pVfs + 1)" identifier = (cast_expression "(sqlite3 *)((int)&psStack_16c->pVfs + 1)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psStack_16c->pVfs + 1)" ( (binary_expression "(int)&psStack_16c->pVfs + 1" (cast_expression "(int)&psStack_16c->pVfs" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psStack_16c->pVfs" & (field_expression "psStack_16c->pVfs" identifier -> field_identifier))) + number_literal) )))) ;) }) while (parenthesized_expression "((int)psStack_16c < (int)psStack_158)" ( (binary_expression "(int)psStack_16c < (int)psStack_158" (cast_expression "(int)psStack_16c" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)psStack_158" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "(**(code **)(puVar25 + -0x7fa8))(unaff_s2);" (call_expression "(**(code **)(puVar25 + -0x7fa8))(unaff_s2)" (parenthesized_expression "(**(code **)(puVar25 + -0x7fa8))" ( (pointer_expression "**(code **)(puVar25 + -0x7fa8)" * (pointer_expression "*(code **)(puVar25 + -0x7fa8)" * (cast_expression "(code **)(puVar25 + -0x7fa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar25 + -0x7fa8)" ( (binary_expression "puVar25 + -0x7fa8" identifier + number_literal) ))))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "in_a3 = (sqlite3 *)0x3;" (assignment_expression "in_a3 = (sqlite3 *)0x3" identifier = (cast_expression "(sqlite3 *)0x3" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188);" (assignment_expression "psVar6 = (sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188)" identifier = (cast_expression "(sqlite3 *)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (psVar18,psStack_18c,psStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,psStack_18c,psStack_188)" ( identifier , identifier , identifier ))))) ;) (expression_statement "psVar27 = psStack_6c;" (assignment_expression "psVar27 = psStack_6c" identifier = identifier) ;) (if_statement "if (psVar6 != (sqlite3 *)0x0) {\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" if (parenthesized_expression "(psVar6 != (sqlite3 *)0x0)" ( (binary_expression "psVar6 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        psVar27 = unaff_s5;\n                        puVar25 = puStack_198;\n                        if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" { (expression_statement "psVar27 = unaff_s5;" (assignment_expression "psVar27 = unaff_s5" identifier = identifier) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if (psVar6 == (sqlite3 *)&DAT_00000005) goto LAB_000d765c;" if (parenthesized_expression "(psVar6 == (sqlite3 *)&DAT_00000005)" ( (binary_expression "psVar6 == (sqlite3 *)&DAT_00000005" identifier == (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) )) (goto_statement "goto LAB_000d765c;" goto statement_identifier ;)) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "psStack_184 = *(sqlite3 **)(iStack_154 + 0x60);" (assignment_expression "psStack_184 = *(sqlite3 **)(iStack_154 + 0x60)" identifier = (pointer_expression "*(sqlite3 **)(iStack_154 + 0x60)" * (cast_expression "(sqlite3 **)(iStack_154 + 0x60)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "*(sqlite3 **)(iStack_154 + 0x80) = psStack_168;" (assignment_expression "*(sqlite3 **)(iStack_154 + 0x80) = psStack_168" (pointer_expression "*(sqlite3 **)(iStack_154 + 0x80)" * (cast_expression "(sqlite3 **)(iStack_154 + 0x80)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iStack_154 + 0x80)" ( (binary_expression "iStack_154 + 0x80" identifier + number_literal) )))) = identifier) ;) (expression_statement "psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e);" (assignment_expression "psStack_160 = (sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e)" identifier = (cast_expression "(sqlite3_mutex *)((uint)((int)psStack_6c << 0x1c) >> 0x1e)" ( (type_descriptor "sqlite3_mutex *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)((int)psStack_6c << 0x1c) >> 0x1e)" ( (binary_expression "(uint)((int)psStack_6c << 0x1c) >> 0x1e" (call_expression "(uint)((int)psStack_6c << 0x1c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)psStack_6c << 0x1c)" ( (binary_expression "(int)psStack_6c << 0x1c" (cast_expression "(int)psStack_6c" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))) >> number_literal) )))) ;) (expression_statement "nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160);" (assignment_expression "nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160)" identifier = (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                        ((psVar18->mutex).__data.__owner,psStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__owner,psStack_160)" ( (field_expression "(psVar18->mutex).__data.__owner" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) , identifier )))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if ((sqlite3 *)nPage == (sqlite3 *)0x0) {\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }" if (parenthesized_expression "((sqlite3 *)nPage == (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)nPage == (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                        psStack_16c = psStack_15c;\n                        uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);\n                        unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);\n                        nPage = (int)unaff_s2;\n                        puVar25 = puStack_198;\n                        if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }\n                      }" { (expression_statement "psStack_16c = psStack_15c;" (assignment_expression "psStack_16c = psStack_15c" identifier = identifier) ;) (expression_statement "uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c);" (assignment_expression "uStack_128 = ZEXT48(psStack_140) * ZEXT48(psStack_15c)" identifier = (binary_expression "ZEXT48(psStack_140) * ZEXT48(psStack_15c)" (call_expression "ZEXT48(psStack_140)" identifier (argument_list "(psStack_140)" ( identifier ))) * (call_expression "ZEXT48(psStack_15c)" identifier (argument_list "(psStack_15c)" ( identifier ))))) ;) (expression_statement "unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120);" (assignment_expression "unaff_s2 = (sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120)" identifier = (cast_expression "(sqlite3 *)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             ((psVar18->mutex).__data.__count,&pVStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa6c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__count,&pVStack_120)" ( (field_expression "(psVar18->mutex).__data.__count" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) , (pointer_expression "&pVStack_120" & identifier) ))))) ;) (expression_statement "nPage = (int)unaff_s2;" (assignment_expression "nPage = (int)unaff_s2" identifier = (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if (unaff_s2 == (sqlite3 *)0x0) {\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }" if (parenthesized_expression "(unaff_s2 == (sqlite3 *)0x0)" ( (binary_expression "unaff_s2 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                          if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          psVar23 = (sqlite3 *)0x0;\n                          unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;\n                          psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar26 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar25 = puStack_198;\n                          do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);\n                        }" { (if_statement "if (((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             ) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }" if (parenthesized_expression "(((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))\n                             )" ( (binary_expression "((int)pVStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))" (parenthesized_expression "((int)pVStack_120 < (int)uStack_128._0_4_)" ( (binary_expression "(int)pVStack_120 < (int)uStack_128._0_4_" (cast_expression "(int)pVStack_120" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uStack_128._0_4_" ( (type_descriptor "int" primitive_type) ) (field_expression "uStack_128._0_4_" identifier . field_identifier))) )) || (parenthesized_expression "((uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)))" ( (parenthesized_expression "(uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_))" ( (binary_expression "uStack_128._0_4_ == pVStack_120 && (pVStack_11c < uStack_128._4_4_)" (binary_expression "uStack_128._0_4_ == pVStack_120" (field_expression "uStack_128._0_4_" identifier . field_identifier) == identifier) && (parenthesized_expression "(pVStack_11c < uStack_128._4_4_)" ( (binary_expression "pVStack_11c < uStack_128._4_4_" identifier < (field_expression "uStack_128._4_4_" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);\n                          }" { (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      ((psVar18->mutex).__data.__count,5,&uStack_128)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xac4" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__count,5,&uStack_128)" ( (field_expression "(psVar18->mutex).__data.__count" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) , number_literal , (pointer_expression "&uStack_128" & identifier) ))) ;) })) (expression_statement "puVar8 = puStack_164;" (assignment_expression "puVar8 = puStack_164" identifier = identifier) ;) (expression_statement "psVar23 = (sqlite3 *)0x0;" (assignment_expression "psVar23 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags;" (assignment_expression "unaff_s3 = (sqlite3 *)&psStack_15c->mDbFlags" identifier = (cast_expression "(sqlite3 *)&psStack_15c->mDbFlags" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psStack_15c->mDbFlags" & (field_expression "psStack_15c->mDbFlags" identifier -> field_identifier)))) ;) (expression_statement "psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);" (assignment_expression "psVar27 = (sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" identifier = (cast_expression "(sqlite3 *)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x9ac" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar26 = *(int *)(puStack_198 + -0x7dc8);" (assignment_expression "iVar26 = *(int *)(puStack_198 + -0x7dc8)" identifier = (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) ))))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (do_statement "do {\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          } while ((sqlite3 *)nPage == (sqlite3 *)0x0);" do (compound_statement "{\n                            do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));\n                            uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;\n                            nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);\n                            p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);\n                            puVar25 = puStack_198;\n                            if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;\n                            uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);\n                            nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);\n                            puVar25 = puStack_198;\n                          }" { (do_statement "do {\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p));" do (compound_statement "{\n                              iVar22 = puVar8[1] + -1;\n                              psVar6 = (sqlite3 *)*puVar8;\n                              if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar16 = puVar8 + puVar8[1] * 5;\n                              p = (sqlite3_backup *)0xffffffff;\n                              do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);\n                              *puVar8 = p;\n                              if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;\n                              if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            }" { (expression_statement "iVar22 = puVar8[1] + -1;" (assignment_expression "iVar22 = puVar8[1] + -1" identifier = (binary_expression "puVar8[1] + -1" (subscript_expression "puVar8[1]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "psVar6 = (sqlite3 *)*puVar8;" (assignment_expression "psVar6 = (sqlite3 *)*puVar8" identifier = (cast_expression "(sqlite3 *)*puVar8" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar8" * identifier))) ;) (if_statement "if (iVar22 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }" if (parenthesized_expression "(iVar22 < 0)" ( (binary_expression "iVar22 < 0" identifier < number_literal) )) (compound_statement "{\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }\n                                *(sqlite3 **)(iStack_154 + 0x60) = psStack_168;\n                                nPage = (int)unaff_s2;\n                                goto LAB_000d7a74;\n                              }" { (expression_statement "*puStack_164 = 0xffffffff;" (assignment_expression "*puStack_164 = 0xffffffff" (pointer_expression "*puStack_164" * identifier) = number_literal) ;) (labeled_statement "LAB_000d7ef8:\n                                if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }" statement_identifier : (if_statement "if (*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168) {\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }" if (parenthesized_expression "(*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168)" ( (binary_expression "*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10) ==\n                                    psStack_168" (pointer_expression "*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10)" * (cast_expression "(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x10)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(**(int **)((int)&psVar18[1].mutex + 8) + 0x10)" ( (binary_expression "**(int **)((int)&psVar18[1].mutex + 8) + 0x10" (pointer_expression "**(int **)((int)&psVar18[1].mutex + 8)" * (pointer_expression "*(int **)((int)&psVar18[1].mutex + 8)" * (cast_expression "(int **)((int)&psVar18[1].mutex + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar18[1].mutex + 8)" ( (binary_expression "(int)&psVar18[1].mutex + 8" (cast_expression "(int)&psVar18[1].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[1].mutex" & (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) + number_literal) )))) == identifier) )) (compound_statement "{\n                                  in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);\n                                  nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);\n                                  puVar25 = puStack_198;\n                                  if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;\n                                }" { (expression_statement "in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c);" (assignment_expression "in_a3 = (sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c)" identifier = (cast_expression "(sqlite3 *)\n                                          (psVar18[3].mutex.__data.__lock * (int)psStack_15c)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(psVar18[3].mutex.__data.__lock * (int)psStack_15c)" ( (binary_expression "psVar18[3].mutex.__data.__lock * (int)psStack_15c" (field_expression "psVar18[3].mutex.__data.__lock" (field_expression "psVar18[3].mutex.__data" (field_expression "psVar18[3].mutex" (subscript_expression "psVar18[3]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) * (cast_expression "(int)psStack_15c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count);" (assignment_expression "nPage = (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count)" identifier = (call_expression "(*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))\n                                                    ((psVar18->mutex).__data.__count)" (parenthesized_expression "(*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14))" ( (pointer_expression "*(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14)" * (cast_expression "(code *)(*(int *)(puVar25 + -0x7dc8) + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar25 + -0x7dc8) + 0xa14)" ( (binary_expression "*(int *)(puVar25 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puVar25 + -0x7dc8)" * (cast_expression "(int *)(puVar25 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + -0x7dc8)" ( (binary_expression "puVar25 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__count)" ( (field_expression "(psVar18->mutex).__data.__count" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) )))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if (((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)) goto LAB_000d7a74;" if (parenthesized_expression "(((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0))" ( (binary_expression "((sqlite3 *)nPage != (sqlite3 *)0x0) ||\n                                     (nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)" (parenthesized_expression "((sqlite3 *)nPage != (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)nPage != (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0)" ( (comma_expression "nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        ), puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0" (assignment_expression "nPage = (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        )" identifier = (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                        ((psVar18->mutex).__data.__count,psStack_160\n                                                        )" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__count,psStack_160\n                                                        )" ( (field_expression "(psVar18->mutex).__data.__count" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) , identifier )))) , (comma_expression "puVar25 = puStack_198,\n                                     (sqlite3 *)nPage != (sqlite3 *)0x0" (assignment_expression "puVar25 = puStack_198" identifier = identifier) , (binary_expression "(sqlite3 *)nPage != (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)))) ))) )) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;)) }))) (expression_statement "*(sqlite3 **)(iStack_154 + 0x60) = psStack_168;" (assignment_expression "*(sqlite3 **)(iStack_154 + 0x60) = psStack_168" (pointer_expression "*(sqlite3 **)(iStack_154 + 0x60)" * (cast_expression "(sqlite3 **)(iStack_154 + 0x60)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) )))) = identifier) ;) (expression_statement "nPage = (int)unaff_s2;" (assignment_expression "nPage = (int)unaff_s2" identifier = (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;) })) (expression_statement "piVar16 = puVar8 + puVar8[1] * 5;" (assignment_expression "piVar16 = puVar8 + puVar8[1] * 5" identifier = (binary_expression "puVar8 + puVar8[1] * 5" identifier + (binary_expression "puVar8[1] * 5" (subscript_expression "puVar8[1]" identifier [ number_literal ]) * number_literal))) ;) (expression_statement "p = (sqlite3_backup *)0xffffffff;" (assignment_expression "p = (sqlite3_backup *)0xffffffff" identifier = (cast_expression "(sqlite3_backup *)0xffffffff" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (do_statement "do {\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              } while (iVar22 != -1);" do (compound_statement "{\n                                iVar10 = piVar16[-3];\n                                if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar22 = iVar22 + -1;\n                                piVar16 = piVar16 + -5;\n                              }" { (expression_statement "iVar10 = piVar16[-3];" (assignment_expression "iVar10 = piVar16[-3]" identifier = (subscript_expression "piVar16[-3]" identifier [ number_literal ])) ;) (if_statement "if (iVar10 < *piVar16) {\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }" if (parenthesized_expression "(iVar10 < *piVar16)" ( (binary_expression "iVar10 < *piVar16" identifier < (pointer_expression "*piVar16" * identifier)) )) (compound_statement "{\n                                  in_a3 = (sqlite3 *)piVar16[-1];\n                                  uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                  psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }\n                                  if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }\n                                }" { (expression_statement "in_a3 = (sqlite3 *)piVar16[-1];" (assignment_expression "in_a3 = (sqlite3 *)piVar16[-1]" identifier = (cast_expression "(sqlite3 *)piVar16[-1]" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "piVar16[-1]" identifier [ number_literal ]))) ;) (expression_statement "uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);" (assignment_expression "uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2)" identifier = (binary_expression "(uint)*(ushort *)(piVar16[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(piVar16[-2] + iVar10 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar16[-2] + iVar10 * 2)" ( (binary_expression "piVar16[-2] + iVar10 * 2" (subscript_expression "piVar16[-2]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) ))))) ;) (expression_statement "psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];" (assignment_expression "psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b]" identifier = (cast_expression "(sqlite3 *)in_a3->aLimit[uVar13 - 0x1b]" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "in_a3->aLimit[uVar13 - 0x1b]" (field_expression "in_a3->aLimit" identifier -> field_identifier) [ (binary_expression "uVar13 - 0x1b" identifier - number_literal) ]))) ;) (while_statement "while (psVar19 <= psVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }" while (parenthesized_expression "(psVar19 <= psVar6)" ( (binary_expression "psVar19 <= psVar6" identifier <= identifier) )) (compound_statement "{\n                                    iVar10 = iVar10 + 1;\n                                    piVar16[-3] = iVar10;\n                                    if (*piVar16 <= iVar10) goto LAB_000d7b7c;\n                                    uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);\n                                    psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];\n                                  }" { (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "piVar16[-3] = iVar10;" (assignment_expression "piVar16[-3] = iVar10" (subscript_expression "piVar16[-3]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (*piVar16 <= iVar10) goto LAB_000d7b7c;" if (parenthesized_expression "(*piVar16 <= iVar10)" ( (binary_expression "*piVar16 <= iVar10" (pointer_expression "*piVar16" * identifier) <= identifier) )) (goto_statement "goto LAB_000d7b7c;" goto statement_identifier ;)) (expression_statement "uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2);" (assignment_expression "uVar13 = (uint)*(ushort *)(piVar16[-2] + iVar10 * 2)" identifier = (binary_expression "(uint)*(ushort *)(piVar16[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(piVar16[-2] + iVar10 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar16[-2] + iVar10 * 2)" ( (binary_expression "piVar16[-2] + iVar10 * 2" (subscript_expression "piVar16[-2]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) ))))) ;) (expression_statement "psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b];" (assignment_expression "psVar19 = (sqlite3 *)in_a3->aLimit[uVar13 - 0x1b]" identifier = (cast_expression "(sqlite3 *)in_a3->aLimit[uVar13 - 0x1b]" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "in_a3->aLimit[uVar13 - 0x1b]" (field_expression "in_a3->aLimit" identifier -> field_identifier) [ (binary_expression "uVar13 - 0x1b" identifier - number_literal) ]))) ;) })) (if_statement "if (psVar19 < p) {\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }" if (parenthesized_expression "(psVar19 < p)" ( (binary_expression "psVar19 < p" identifier < identifier) )) (compound_statement "{\n                                    psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);\n                                    p = (sqlite3_backup *)psVar19;\n                                  }" { (expression_statement "psVar23 = (sqlite3 *)(uVar13 + piVar16[1]);" (assignment_expression "psVar23 = (sqlite3 *)(uVar13 + piVar16[1])" identifier = (cast_expression "(sqlite3 *)(uVar13 + piVar16[1])" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar13 + piVar16[1])" ( (binary_expression "uVar13 + piVar16[1]" identifier + (subscript_expression "piVar16[1]" identifier [ number_literal ])) )))) ;) (expression_statement "p = (sqlite3_backup *)psVar19;" (assignment_expression "p = (sqlite3_backup *)psVar19" identifier = (cast_expression "(sqlite3_backup *)psVar19" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) })) })) (labeled_statement "LAB_000d7b7c:\n                                iVar22 = iVar22 + -1;" statement_identifier : (expression_statement "iVar22 = iVar22 + -1;" (assignment_expression "iVar22 = iVar22 + -1" identifier = (binary_expression "iVar22 + -1" identifier + number_literal)) ;)) (expression_statement "piVar16 = piVar16 + -5;" (assignment_expression "piVar16 = piVar16 + -5" identifier = (binary_expression "piVar16 + -5" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar22 != -1)" ( (binary_expression "iVar22 != -1" identifier != number_literal) )) ;) (expression_statement "*puVar8 = p;" (assignment_expression "*puVar8 = p" (pointer_expression "*puVar8" * identifier) = identifier) ;) (if_statement "if ((sqlite3 *)p == (sqlite3 *)0xffffffff) goto LAB_000d7ef8;" if (parenthesized_expression "((sqlite3 *)p == (sqlite3 *)0xffffffff)" ( (binary_expression "(sqlite3 *)p == (sqlite3 *)0xffffffff" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0xffffffff" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d7ef8;" goto statement_identifier ;)) (if_statement "if ((psStack_180->u1).isInterrupted != 0) {\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" if (parenthesized_expression "((psStack_180->u1).isInterrupted != 0)" ( (binary_expression "(psStack_180->u1).isInterrupted != 0" (field_expression "(psStack_180->u1).isInterrupted" (parenthesized_expression "(psStack_180->u1)" ( (field_expression "psStack_180->u1" identifier -> field_identifier) )) . field_identifier) != number_literal) )) (compound_statement "{\n                                nPage = (int)&DAT_00000007;\n                                if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" { (expression_statement "nPage = (int)&DAT_00000007;" (assignment_expression "nPage = (int)&DAT_00000007" identifier = (cast_expression "(int)&DAT_00000007" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (if_statement "if (psStack_180->mallocFailed == '\0') {\n                                  nPage = (int)&DAT_00000009;\n                                }" if (parenthesized_expression "(psStack_180->mallocFailed == '\0')" ( (binary_expression "psStack_180->mallocFailed == '\0'" (field_expression "psStack_180->mallocFailed" identifier -> field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                                  nPage = (int)&DAT_00000009;\n                                }" { (expression_statement "nPage = (int)&DAT_00000009;" (assignment_expression "nPage = (int)&DAT_00000009" identifier = (cast_expression "(int)&DAT_00000009" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&DAT_00000009" & identifier))) ;) })) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;) })) }) while (parenthesized_expression "(((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p))" ( (binary_expression "((psVar23 <= psStack_184) || (psStack_168 < psVar23)) ||\n                                    (psStack_140 < p)" (parenthesized_expression "((psVar23 <= psStack_184) || (psStack_168 < psVar23))" ( (binary_expression "(psVar23 <= psStack_184) || (psStack_168 < psVar23)" (parenthesized_expression "(psVar23 <= psStack_184)" ( (binary_expression "psVar23 <= psStack_184" identifier <= identifier) )) || (parenthesized_expression "(psStack_168 < psVar23)" ( (binary_expression "psStack_168 < psVar23" identifier < identifier) ))) )) || (parenthesized_expression "(psStack_140 < p)" ( (binary_expression "psStack_140 < p" identifier < identifier) ))) )) ;) (expression_statement "uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38;" (assignment_expression "uStack_1a0 = ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38" identifier = (binary_expression "ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3) + 0x38" (binary_expression "ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))\n                                         * ZEXT48(unaff_s3)" (call_expression "ZEXT48((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))" identifier (argument_list "((undefined1 *)((int)&psVar23[-1].pNextBlocked + 3))" ( (cast_expression "(undefined1 *)((int)&psVar23[-1].pNextBlocked + 3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&psVar23[-1].pNextBlocked + 3)" ( (binary_expression "(int)&psVar23[-1].pNextBlocked + 3" (cast_expression "(int)&psVar23[-1].pNextBlocked" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar23[-1].pNextBlocked" & (field_expression "psVar23[-1].pNextBlocked" (subscript_expression "psVar23[-1]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))) ))) * (call_expression "ZEXT48(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier )))) + number_literal)) ;) (expression_statement "nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c);" (assignment_expression "nPage = (*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c)" identifier = (call_expression "(*(code *)psVar27)((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c)" (parenthesized_expression "(*(code *)psVar27)" ( (pointer_expression "*(code *)psVar27" * (cast_expression "(code *)psVar27" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((psVar18->mutex).__data.__owner,p_Stack_174,\n                                                       psStack_15c)" ( (field_expression "(psVar18->mutex).__data.__owner" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) , identifier , identifier )))) ;) (expression_statement "p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3);" (assignment_expression "p = (sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3)" identifier = (cast_expression "(sqlite3_backup *)\n                                ((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3)" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3)" ( (binary_expression "(int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked + 3" (cast_expression "(int)&((sqlite3 *)((int)p + -0x200))->pNextBlocked" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&((sqlite3 *)((int)p + -0x200))->pNextBlocked" & (field_expression "((sqlite3 *)((int)p + -0x200))->pNextBlocked" (parenthesized_expression "((sqlite3 *)((int)p + -0x200))" ( (cast_expression "(sqlite3 *)((int)p + -0x200)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)p + -0x200)" ( (binary_expression "(int)p + -0x200" (cast_expression "(int)p" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) )) -> field_identifier))) + number_literal) )))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (if_statement "if ((sqlite3 *)nPage != (sqlite3 *)0x0) break;" if (parenthesized_expression "((sqlite3 *)nPage != (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)nPage != (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c);" (assignment_expression "uStack_1a0 = ZEXT48(p) * ZEXT48(psStack_16c)" identifier = (binary_expression "ZEXT48(p) * ZEXT48(psStack_16c)" (call_expression "ZEXT48(p)" identifier (argument_list "(p)" ( identifier ))) * (call_expression "ZEXT48(psStack_16c)" identifier (argument_list "(psStack_16c)" ( identifier ))))) ;) (expression_statement "nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c);" (assignment_expression "nPage = (*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c)" identifier = (call_expression "(*(code *)(iVar26 + 0x9e0))\n                                              ((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c)" (parenthesized_expression "(*(code *)(iVar26 + 0x9e0))" ( (pointer_expression "*(code *)(iVar26 + 0x9e0)" * (cast_expression "(code *)(iVar26 + 0x9e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + 0x9e0)" ( (binary_expression "iVar26 + 0x9e0" identifier + number_literal) )))) )) (argument_list "((psVar18->mutex).__data.__count,p_Stack_174,\n                                               psStack_15c)" ( (field_expression "(psVar18->mutex).__data.__count" (field_expression "(psVar18->mutex).__data" (parenthesized_expression "(psVar18->mutex)" ( (field_expression "psVar18->mutex" identifier -> field_identifier) )) . field_identifier) . field_identifier) , identifier , identifier )))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) }) while (parenthesized_expression "((sqlite3 *)nPage == (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)nPage == (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) })) (labeled_statement "LAB_000d7a74:\n                      (*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);" statement_identifier : (expression_statement "(*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1);" (call_expression "(*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))(psVar18,3,1)" (parenthesized_expression "(*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puVar25 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar25 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puVar25 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puVar25 + -0x7dc8)" * (cast_expression "(int *)(puVar25 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar25 + -0x7dc8)" ( (binary_expression "puVar25 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,3,1)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) (goto_statement "goto LAB_000d7648;" goto statement_identifier ;) })) (expression_statement "psVar6 = (sqlite3 *)&DAT_00000007;" (assignment_expression "psVar6 = (sqlite3 *)&DAT_00000007" identifier = (cast_expression "(sqlite3 *)&DAT_00000007" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (expression_statement "puVar25 = puStack_198;" (assignment_expression "puVar25 = puStack_198" identifier = identifier) ;) }) (else_clause "else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }" else (compound_statement "{\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = psVar27;\n                    if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;\n                  }" { (labeled_statement "LAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;" statement_identifier : (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_000d7648:\n                    unaff_s5 = psVar27;" statement_identifier : (expression_statement "unaff_s5 = psVar27;" (assignment_expression "unaff_s5 = psVar27" identifier = identifier) ;)) (if_statement "if (((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))\n                    goto LAB_000d765c;" if (parenthesized_expression "(((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0))" ( (binary_expression "((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005) ||\n                       (psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0)" (parenthesized_expression "((sqlite3 *)nPage == (sqlite3 *)&DAT_00000005)" ( (binary_expression "(sqlite3 *)nPage == (sqlite3 *)&DAT_00000005" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) )) || (parenthesized_expression "(psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0)" ( (comma_expression "psVar6 = (sqlite3 *)nPage, (sqlite3 *)nPage == (sqlite3 *)0x0" (assignment_expression "psVar6 = (sqlite3 *)nPage" identifier = (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "(sqlite3 *)nPage == (sqlite3 *)0x0" (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (goto_statement "goto LAB_000d765c;" goto statement_identifier ;)) }))) }) (else_clause "else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }" else (compound_statement "{\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  psVar27 = unaff_s5;\n                  if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }\n                }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d765c:\n                  psVar27 = unaff_s5;" statement_identifier : (expression_statement "psVar27 = unaff_s5;" (assignment_expression "psVar27 = unaff_s5" identifier = identifier) ;)) (if_statement "if (psStack_170 == (sqlite3 *)0x0) {\n                    psVar6 = (sqlite3 *)0x0;\n                  }\n                  else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }" if (parenthesized_expression "(psStack_170 == (sqlite3 *)0x0)" ( (binary_expression "psStack_170 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    psVar6 = (sqlite3 *)0x0;\n                  }" { (expression_statement "psVar6 = (sqlite3 *)0x0;" (assignment_expression "psVar6 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }" else (compound_statement "{\n                    if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;\n                    p = (sqlite3_backup *)psStack_170;\n                    psVar6 = (sqlite3 *)&DAT_00000005;\n                  }" { (if_statement "if ((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)) goto LAB_000d7f78;" if (parenthesized_expression "((uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60))" ( (binary_expression "(uint)psVar18[2].mutex.__data.field_5 <=\n                        (uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)" (cast_expression "(uint)psVar18[2].mutex.__data.field_5" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar18[2].mutex.__data.field_5" (field_expression "psVar18[2].mutex.__data" (field_expression "psVar18[2].mutex" (subscript_expression "psVar18[2]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier)) <= (binary_expression "(uint)*(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)\n                               (iStack_154 + 0x60)" ( (type_descriptor "anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000d7f78;" goto statement_identifier ;)) (expression_statement "p = (sqlite3_backup *)psStack_170;" (assignment_expression "p = (sqlite3_backup *)psStack_170" identifier = (cast_expression "(sqlite3_backup *)psStack_170" ( (type_descriptor "sqlite3_backup *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "psVar6 = (sqlite3 *)&DAT_00000005;" (assignment_expression "psVar6 = (sqlite3 *)&DAT_00000005" identifier = (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) ;) }))) }))) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);" (assignment_expression "psVar6 = (sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" identifier = (cast_expression "(sqlite3 *)(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" ( (binary_expression "*(int *)(puStack_198 + -0x7d2c) + 0x3b28" (pointer_expression "*(int *)(puStack_198 + -0x7d2c)" * (cast_expression "(int *)(puStack_198 + -0x7d2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d2c)" ( (binary_expression "puStack_198 + -0x7d2c" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(0xf176)" ( number_literal ))))) ;) }))) (if_statement "if ((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))\n            goto LAB_000d8034;" if (parenthesized_expression "((psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005))" ( (binary_expression "(psVar6 != (sqlite3 *)0x0) && (psVar6 != (sqlite3 *)&DAT_00000005)" (parenthesized_expression "(psVar6 != (sqlite3 *)0x0)" ( (binary_expression "psVar6 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(psVar6 != (sqlite3 *)&DAT_00000005)" ( (binary_expression "psVar6 != (sqlite3 *)&DAT_00000005" identifier != (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) ))) )) (goto_statement "goto LAB_000d8034;" goto statement_identifier ;)) (if_statement "if (paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0) {\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }" if (parenthesized_expression "(paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0)" ( (binary_expression "paStack_17c != (anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0" identifier != (cast_expression "(anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *)0x0" ( (type_descriptor "anon_union_4_2_9a799d16_for___pthread_mutex_s_5 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              *paStack_17c = psVar18[2].mutex.__data.field_5;\n            }" { (expression_statement "*paStack_17c = psVar18[2].mutex.__data.field_5;" (assignment_expression "*paStack_17c = psVar18[2].mutex.__data.field_5" (pointer_expression "*paStack_17c" * identifier) = (field_expression "psVar18[2].mutex.__data.field_5" (field_expression "psVar18[2].mutex.__data" (field_expression "psVar18[2].mutex" (subscript_expression "psVar18[2]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier)) ;) })) (if_statement "if (psStack_178 != (sqlite3 *)0x0) {\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }" if (parenthesized_expression "(psStack_178 != (sqlite3 *)0x0)" ( (binary_expression "psStack_178 != (sqlite3 *)0x0" identifier != (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);\n            }" { (expression_statement "psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60);" (assignment_expression "psStack_178->pVfs =\n                   (sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60)" (field_expression "psStack_178->pVfs" identifier -> field_identifier) = (cast_expression "(sqlite3_vfs *)*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60)" ( (type_descriptor "sqlite3_vfs *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60)" * (cast_expression "(sqlite3 **)(**(int **)((int)&psVar18[1].mutex + 8) + 0x60)" ( (type_descriptor "sqlite3 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(**(int **)((int)&psVar18[1].mutex + 8) + 0x60)" ( (binary_expression "**(int **)((int)&psVar18[1].mutex + 8) + 0x60" (pointer_expression "**(int **)((int)&psVar18[1].mutex + 8)" * (pointer_expression "*(int **)((int)&psVar18[1].mutex + 8)" * (cast_expression "(int **)((int)&psVar18[1].mutex + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)&psVar18[1].mutex + 8)" ( (binary_expression "(int)&psVar18[1].mutex + 8" (cast_expression "(int)&psVar18[1].mutex" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&psVar18[1].mutex" & (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier))) + number_literal) ))))) + number_literal) )))))) ;) })) (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d7e2c;" goto statement_identifier ;)) }))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18)" ( identifier ))) ;) (expression_statement "in_a2 = (sqlite3 *)0x1;" (assignment_expression "in_a2 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar27 = (sqlite3 *)0x1;" (assignment_expression "psVar27 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18)" ( identifier ))) ;) (expression_statement "psVar18[1].mutex.__size[0x15] = '\0';" (assignment_expression "psVar18[1].mutex.__size[0x15] = '\0'" (subscript_expression "psVar18[1].mutex.__size[0x15]" (field_expression "psVar18[1].mutex.__size" (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if ((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)) {\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }" if (parenthesized_expression "((psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170))" ( (binary_expression "(psVar6 == (sqlite3 *)0x0) && (psStack_78 != psStack_170)" (parenthesized_expression "(psVar6 == (sqlite3 *)0x0)" ( (binary_expression "psVar6 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(psStack_78 != psStack_170)" ( (binary_expression "psStack_78 != psStack_170" identifier != identifier) ))) )) (compound_statement "{\n            psVar6 = (sqlite3 *)&DAT_00000005;\n          }" { (expression_statement "psVar6 = (sqlite3 *)&DAT_00000005;" (assignment_expression "psVar6 = (sqlite3 *)&DAT_00000005" identifier = (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) ;) })) (goto_statement "goto LAB_000d7ea0;" goto statement_identifier ;) })) (if_statement "if ((sqlite3 *)p == (sqlite3 *)0x0) goto LAB_000d74f0;" if (parenthesized_expression "((sqlite3 *)p == (sqlite3 *)0x0)" ( (binary_expression "(sqlite3 *)p == (sqlite3 *)0x0" (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000d74f0;" goto statement_identifier ;)) }) (else_clause "else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" else (compound_statement "{\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);\n        if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }\n        if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }\n        psStack_170 = psStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" { (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188);" (assignment_expression "psVar6 = (sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188)" identifier = (cast_expression "(sqlite3 *)\n                 (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188)" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                           (psVar18,psStack_18c,psStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18,psStack_18c,psStack_188)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (psVar6 == (sqlite3 *)0x0) {\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }" if (parenthesized_expression "(psVar6 == (sqlite3 *)0x0)" ( (binary_expression "psVar6 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          psVar18[1].mutex.__size[0x14] = '\x01';\n          psStack_170 = psStack_78;\n          goto LAB_000d7410;\n        }" { (expression_statement "psVar18[1].mutex.__size[0x14] = '\x01';" (assignment_expression "psVar18[1].mutex.__size[0x14] = '\x01'" (subscript_expression "psVar18[1].mutex.__size[0x14]" (field_expression "psVar18[1].mutex.__size" (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "psStack_170 = psStack_78;" (assignment_expression "psStack_170 = psStack_78" identifier = identifier) ;) (goto_statement "goto LAB_000d7410;" goto statement_identifier ;) })) (if_statement "if (psVar6 == (sqlite3 *)&DAT_00000005) {\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }" if (parenthesized_expression "(psVar6 == (sqlite3 *)&DAT_00000005)" ( (binary_expression "psVar6 == (sqlite3 *)&DAT_00000005" identifier == (cast_expression "(sqlite3 *)&DAT_00000005" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000005" & identifier))) )) (compound_statement "{\n          psStack_18c = (sqlite3 *)0x0;\n          psStack_170 = (sqlite3 *)0x0;\n          goto LAB_000d7410;\n        }" { (expression_statement "psStack_18c = (sqlite3 *)0x0;" (assignment_expression "psStack_18c = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psStack_170 = (sqlite3 *)0x0;" (assignment_expression "psStack_170 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_000d7410;" goto statement_identifier ;) })) (expression_statement "psStack_170 = psStack_78;" (assignment_expression "psStack_170 = psStack_78" identifier = identifier) ;) (labeled_statement "LAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;" statement_identifier : (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d7e2c;" goto statement_identifier ;))) }))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(psVar18)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18)" ( identifier ))) ;) (expression_statement "in_a2 = (sqlite3 *)0x1;" (assignment_expression "in_a2 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "psVar27 = (sqlite3 *)0x1;" (assignment_expression "psVar27 = (sqlite3 *)0x1" identifier = (cast_expression "(sqlite3 *)0x1" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(psVar18)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(psVar18)" ( identifier ))) ;) (expression_statement "psVar18[1].mutex.__size[0x15] = '\0';" (assignment_expression "psVar18[1].mutex.__size[0x15] = '\0'" (subscript_expression "psVar18[1].mutex.__size[0x15]" (field_expression "psVar18[1].mutex.__size" (field_expression "psVar18[1].mutex" (subscript_expression "psVar18[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) })) }) (else_clause "else {\n    psVar6 = (sqlite3 *)&DAT_00000008;\n  }" else (compound_statement "{\n    psVar6 = (sqlite3 *)&DAT_00000008;\n  }" { (expression_statement "psVar6 = (sqlite3 *)&DAT_00000008;" (assignment_expression "psVar6 = (sqlite3 *)&DAT_00000008" identifier = (cast_expression "(sqlite3 *)&DAT_00000008" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000008" & identifier))) ;) }))) (labeled_statement "LAB_000d7ea0:\n  if (pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)) {\n    return (int)psVar6;\n  }" statement_identifier : (if_statement "if (pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)) {\n    return (int)psVar6;\n  }" if (parenthesized_expression "(pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54))" ( (binary_expression "pWStack_ac == (Wal *)**(int **)(puStack_198 + -0x7a54)" identifier == (cast_expression "(Wal *)**(int **)(puStack_198 + -0x7a54)" ( (type_descriptor "Wal *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(puStack_198 + -0x7a54)" * (pointer_expression "*(int **)(puStack_198 + -0x7a54)" * (cast_expression "(int **)(puStack_198 + -0x7a54)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7a54)" ( (binary_expression "puStack_198 + -0x7a54" identifier + number_literal) ))))))) )) (compound_statement "{\n    return (int)psVar6;\n  }" { (return_statement "return (int)psVar6;" return (cast_expression "(int)psVar6" ( (type_descriptor "int" primitive_type) ) identifier) ;) }))) (expression_statement "pcVar3 = *(code **)(puStack_198 + -0x7a80);" (assignment_expression "pcVar3 = *(code **)(puStack_198 + -0x7a80)" identifier = (pointer_expression "*(code **)(puStack_198 + -0x7a80)" * (cast_expression "(code **)(puStack_198 + -0x7a80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7a80)" ( (binary_expression "puStack_198 + -0x7a80" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = sqlite3WalClose;" (assignment_expression "pcVar4 = sqlite3WalClose" identifier = identifier) ;) (expression_statement "pWal = pWStack_ac;" (assignment_expression "pWal = pWStack_ac" identifier = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar24 = uStack_1a0._0_4_;" (assignment_expression "puVar24 = uStack_1a0._0_4_" identifier = (field_expression "uStack_1a0._0_4_" identifier . field_identifier)) ;) (expression_statement "pPStack_1d4 = (Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c);" (assignment_expression "pPStack_1d4 = (Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c)" identifier = (cast_expression "(Pager *)**(undefined4 **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "Pager *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar3 + 0xb7e2c)" * (pointer_expression "*(undefined4 **)(pcVar3 + 0xb7e2c)" * (cast_expression "(undefined4 **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e2c)" ( (binary_expression "pcVar3 + 0xb7e2c" identifier + number_literal) ))))))) ;) (expression_statement "psStack_1cc = (sqlite3 *)p;" (assignment_expression "psStack_1cc = (sqlite3 *)p" identifier = (cast_expression "(sqlite3 *)p" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "psStack_1c8 = psVar23;" (assignment_expression "psStack_1c8 = psVar23" identifier = identifier) ;) (expression_statement "psStack_1c4 = unaff_s2;" (assignment_expression "psStack_1c4 = unaff_s2" identifier = identifier) ;) (expression_statement "psStack_1c0 = unaff_s3;" (assignment_expression "psStack_1c0 = unaff_s3" identifier = identifier) ;) (expression_statement "psStack_1bc = (sqlite3 *)nPage;" (assignment_expression "psStack_1bc = (sqlite3 *)nPage" identifier = (cast_expression "(sqlite3 *)nPage" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "psStack_1b8 = unaff_s5;" (assignment_expression "psStack_1b8 = unaff_s5" identifier = identifier) ;) (expression_statement "pcStack_1b4 = pcVar4;" (assignment_expression "pcStack_1b4 = pcVar4" identifier = identifier) ;) (if_statement "if (pWal == (Wal *)0x0) {\n    iVar26 = 0;\n    goto LAB_000d8300;\n  }" if (parenthesized_expression "(pWal == (Wal *)0x0)" ( (binary_expression "pWal == (Wal *)0x0" identifier == (cast_expression "(Wal *)0x0" ( (type_descriptor "Wal *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar26 = 0;\n    goto LAB_000d8300;\n  }" { (expression_statement "iVar26 = 0;" (assignment_expression "iVar26 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_000d8300;" goto statement_identifier ;) })) (if_statement "if (uStack_1a0._0_4_ == (u8 *)0x0) {\n    iVar26 = 0;\nLAB_000d82a0:\n    psVar27 = (sqlite3 *)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n    ppuVar20 = pWal->apWiData;\n  }\n  else {\n    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }\n    iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }\n  }" if (parenthesized_expression "(uStack_1a0._0_4_ == (u8 *)0x0)" ( (binary_expression "uStack_1a0._0_4_ == (u8 *)0x0" (field_expression "uStack_1a0._0_4_" identifier . field_identifier) == (cast_expression "(u8 *)0x0" ( (type_descriptor "u8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    iVar26 = 0;\nLAB_000d82a0:\n    psVar27 = (sqlite3 *)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n    ppuVar20 = pWal->apWiData;\n  }" { (expression_statement "iVar26 = 0;" (assignment_expression "iVar26 = 0" identifier = number_literal) ;) (labeled_statement "LAB_000d82a0:\n    psVar27 = (sqlite3 *)0x0;" statement_identifier : (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal->pWalFd)" ( (field_expression "pWal->pWalFd" identifier -> field_identifier) ))) ;) (expression_statement "ppuVar20 = pWal->apWiData;" (assignment_expression "ppuVar20 = pWal->apWiData" identifier = (field_expression "pWal->apWiData" identifier -> field_identifier)) ;) }) (else_clause "else {\n    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }\n    iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }\n  }" else (compound_statement "{\n    iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }\n    iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);\n    if (iVar26 != 0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }\n  }" { (expression_statement "iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4);" (assignment_expression "iVar26 = (*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4)" identifier = (call_expression "(*pWal->pDbFd->pMethods->xLock)(pWal->pDbFd,4)" (parenthesized_expression "(*pWal->pDbFd->pMethods->xLock)" ( (pointer_expression "*pWal->pDbFd->pMethods->xLock" * (field_expression "pWal->pDbFd->pMethods->xLock" (field_expression "pWal->pDbFd->pMethods" (field_expression "pWal->pDbFd" identifier -> field_identifier) -> field_identifier) -> field_identifier)) )) (argument_list "(pWal->pDbFd,4)" ( (field_expression "pWal->pDbFd" identifier -> field_identifier) , number_literal )))) ;) (if_statement "if (iVar26 != 0) goto LAB_000d82a0;" if (parenthesized_expression "(iVar26 != 0)" ( (binary_expression "iVar26 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d82a0;" goto statement_identifier ;)) (if_statement "if (pWal->exclusiveMode == '\0') {\n      pWal->exclusiveMode = '\x01';\n    }" if (parenthesized_expression "(pWal->exclusiveMode == '\0')" ( (binary_expression "pWal->exclusiveMode == '\0'" (field_expression "pWal->exclusiveMode" identifier -> field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pWal->exclusiveMode = '\x01';\n    }" { (expression_statement "pWal->exclusiveMode = '\x01';" (assignment_expression "pWal->exclusiveMode = '\x01'" (field_expression "pWal->exclusiveMode" identifier -> field_identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0);" (assignment_expression "iVar26 = sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0)" identifier = (call_expression "sqlite3WalCheckpoint\n                       (pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0)" identifier (argument_list "(pWal,psVar27,0,(_func_int_void_ptr *)0x0,(void *)0x0,(int)in_a2,(int)in_a3,\n                        puVar24,(int *)0x0,(int *)0x0)" ( identifier , identifier , number_literal , (cast_expression "(_func_int_void_ptr *)0x0" ( (type_descriptor "_func_int_void_ptr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(int)in_a2" ( (type_descriptor "int" primitive_type) ) identifier) , (cast_expression "(int)in_a3" ( (type_descriptor "int" primitive_type) ) identifier) , identifier , (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) )))) ;) (if_statement "if (iVar26 != 0) goto LAB_000d82a0;" if (parenthesized_expression "(iVar26 != 0)" ( (binary_expression "iVar26 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d82a0;" goto statement_identifier ;)) (expression_statement "iStack_1d8 = -1;" (assignment_expression "iStack_1d8 = -1" identifier = number_literal) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pWal->pDbFd,10,&iStack_1d8)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xac4" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal->pDbFd,10,&iStack_1d8)" ( (field_expression "pWal->pDbFd" identifier -> field_identifier) , number_literal , (pointer_expression "&iStack_1d8" & identifier) ))) ;) (if_statement "if (iStack_1d8 == 1) {\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }" if (parenthesized_expression "(iStack_1d8 == 1)" ( (binary_expression "iStack_1d8 == 1" identifier == number_literal) )) (compound_statement "{\n      if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }\n      psVar27 = (sqlite3 *)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      ppuVar20 = pWal->apWiData;\n    }" { (if_statement "if (-1 < *(int *)&pWal->mxWalSize) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }" if (parenthesized_expression "(-1 < *(int *)&pWal->mxWalSize)" ( (binary_expression "-1 < *(int *)&pWal->mxWalSize" number_literal < (pointer_expression "*(int *)&pWal->mxWalSize" * (cast_expression "(int *)&pWal->mxWalSize" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pWal->mxWalSize" & (field_expression "pWal->mxWalSize" identifier -> field_identifier))))) )) (compound_statement "{\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);\n      }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pWal,1,0,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b54) + 0x2844" (pointer_expression "*(int *)(pcVar3 + 0xb7b54)" * (cast_expression "(int *)(pcVar3 + 0xb7b54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b54)" ( (binary_expression "pcVar3 + 0xb7b54" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal,1,0,0)" ( identifier , number_literal , number_literal , number_literal ))) ;) })) (expression_statement "psVar27 = (sqlite3 *)0x0;" (assignment_expression "psVar27 = (sqlite3 *)0x0" identifier = (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal->pWalFd)" ( (field_expression "pWal->pWalFd" identifier -> field_identifier) ))) ;) (expression_statement "ppuVar20 = pWal->apWiData;" (assignment_expression "ppuVar20 = pWal->apWiData" identifier = (field_expression "pWal->apWiData" identifier -> field_identifier)) ;) }) (else_clause "else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }" else (compound_statement "{\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      psVar27 = (sqlite3 *)pWal->zWalName;\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      ppuVar20 = pWal->apWiData;\n    }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pWal)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pWal->pWalFd)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal->pWalFd)" ( (field_expression "pWal->pWalFd" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "psVar27 = (sqlite3 *)pWal->zWalName;" (assignment_expression "psVar27 = (sqlite3 *)pWal->zWalName" identifier = (cast_expression "(sqlite3 *)pWal->zWalName" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pWal->zWalName" identifier -> field_identifier))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(pWal->pVfs,psVar27,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xba0" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pWal->pVfs,psVar27,0)" ( (field_expression "pWal->pVfs" identifier -> field_identifier) , identifier , number_literal ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd98" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "ppuVar20 = pWal->apWiData;" (assignment_expression "ppuVar20 = pWal->apWiData" identifier = (field_expression "pWal->apWiData" identifier -> field_identifier)) ;) }))) }))) (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb78d8);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb78d8)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb78d8)" * (cast_expression "(code **)(pcVar3 + 0xb78d8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb78d8)" ( (binary_expression "pcVar3 + 0xb78d8" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar4)(ppuVar20);" (call_expression "(*pcVar4)(ppuVar20)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(ppuVar20)" ( identifier ))) ;) (expression_statement "(*pcVar4)(pWal);" (call_expression "(*pcVar4)(pWal)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pWal)" ( identifier ))) ;) (labeled_statement "LAB_000d8300:\n  if (pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)) {\n    return iVar26;\n  }" statement_identifier : (if_statement "if (pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)) {\n    return iVar26;\n  }" if (parenthesized_expression "(pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c))" ( (binary_expression "pPStack_1d4 == (Pager *)**(int **)(pcVar3 + 0xb7e2c)" identifier == (cast_expression "(Pager *)**(int **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "Pager *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" * (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" * (cast_expression "(int **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e2c)" ( (binary_expression "pcVar3 + 0xb7e2c" identifier + number_literal) ))))))) )) (compound_statement "{\n    return iVar26;\n  }" { (return_statement "return iVar26;" return identifier ;) }))) (expression_statement "pcVar3 = *(code **)(pcVar3 + 0xb7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 0xb7e00)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb7e00)" * (cast_expression "(code **)(pcVar3 + 0xb7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e00)" ( (binary_expression "pcVar3 + 0xb7e00" identifier + number_literal) ))))) ;) (expression_statement "pPVar5 = pPStack_1d4;" (assignment_expression "pPVar5 = pPStack_1d4" identifier = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puVar24 = (u8 *)pPVar5->pTmpSpace;" (assignment_expression "puVar24 = (u8 *)pPVar5->pTmpSpace" identifier = (cast_expression "(u8 *)pPVar5->pTmpSpace" ( (type_descriptor "u8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pPVar5->pTmpSpace" identifier -> field_identifier))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0xd58)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "pPVar21 = pPVar5->pMmapFreelist;" (assignment_expression "pPVar21 = pPVar5->pMmapFreelist" identifier = (field_expression "pPVar5->pMmapFreelist" identifier -> field_identifier)) ;) (if_statement "if (pPVar21 != (PgHdr *)0x0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    } while (pPVar21 != (PgHdr *)0x0);\n  }" if (parenthesized_expression "(pPVar21 != (PgHdr *)0x0)" ( (binary_expression "pPVar21 != (PgHdr *)0x0" identifier != (cast_expression "(PgHdr *)0x0" ( (type_descriptor "PgHdr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    } while (pPVar21 != (PgHdr *)0x0);\n  }" { (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb7634);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb7634)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb7634)" * (cast_expression "(code **)(pcVar3 + 0xb7634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7634)" ( (binary_expression "pcVar3 + 0xb7634" identifier + number_literal) ))))) ;) (do_statement "do {\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    } while (pPVar21 != (PgHdr *)0x0);" do (compound_statement "{\n      pPVar21 = pPVar21->pDirty;\n      (*pcVar4)();\n    }" { (expression_statement "pPVar21 = pPVar21->pDirty;" (assignment_expression "pPVar21 = pPVar21->pDirty" identifier = (field_expression "pPVar21->pDirty" identifier -> field_identifier)) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) }) while (parenthesized_expression "(pPVar21 != (PgHdr *)0x0)" ( (binary_expression "pPVar21 != (PgHdr *)0x0" identifier != (cast_expression "(PgHdr *)0x0" ( (type_descriptor "PgHdr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) })) (expression_statement "pPVar5->exclusiveMode = '\0';" (assignment_expression "pPVar5->exclusiveMode = '\0'" (field_expression "pPVar5->exclusiveMode" identifier -> field_identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (psVar27 == (sqlite3 *)0x0) {\n    zBuf = (u8 *)0x0;\n  }\n  else if ((psVar27->flags & 0x800) == 0) {\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }\n  else {\n    zBuf = (u8 *)0x0;\n  }" if (parenthesized_expression "(psVar27 == (sqlite3 *)0x0)" ( (binary_expression "psVar27 == (sqlite3 *)0x0" identifier == (cast_expression "(sqlite3 *)0x0" ( (type_descriptor "sqlite3 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    zBuf = (u8 *)0x0;\n  }" { (expression_statement "zBuf = (u8 *)0x0;" (assignment_expression "zBuf = (u8 *)0x0" identifier = (cast_expression "(u8 *)0x0" ( (type_descriptor "u8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else if ((psVar27->flags & 0x800) == 0) {\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }\n  else {\n    zBuf = (u8 *)0x0;\n  }" else (if_statement "if ((psVar27->flags & 0x800) == 0) {\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }\n  else {\n    zBuf = (u8 *)0x0;\n  }" if (parenthesized_expression "((psVar27->flags & 0x800) == 0)" ( (binary_expression "(psVar27->flags & 0x800) == 0" (parenthesized_expression "(psVar27->flags & 0x800)" ( (binary_expression "psVar27->flags & 0x800" (field_expression "psVar27->flags" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);\n    zBuf = puVar24;\n    if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }\n  }" { (expression_statement "iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5);" (assignment_expression "iVar26 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5)" identifier = (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(pPVar5)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x485c)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x485c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pPVar5)" ( identifier )))) ;) (expression_statement "zBuf = puVar24;" (assignment_expression "zBuf = puVar24" identifier = identifier) ;) (if_statement "if (iVar26 != 0) {\n      zBuf = (u8 *)0x0;\n    }" if (parenthesized_expression "(iVar26 != 0)" ( (binary_expression "iVar26 != 0" identifier != number_literal) )) (compound_statement "{\n      zBuf = (u8 *)0x0;\n    }" { (expression_statement "zBuf = (u8 *)0x0;" (assignment_expression "zBuf = (u8 *)0x0" identifier = (cast_expression "(u8 *)0x0" ( (type_descriptor "u8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }) (else_clause "else {\n    zBuf = (u8 *)0x0;\n  }" else (compound_statement "{\n    zBuf = (u8 *)0x0;\n  }" { (expression_statement "zBuf = (u8 *)0x0;" (assignment_expression "zBuf = (u8 *)0x0" identifier = (cast_expression "(u8 *)0x0" ( (type_descriptor "u8 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))))) (expression_statement "sqlite3WalClose(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf);" (call_expression "sqlite3WalClose(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf)" identifier (argument_list "(pPVar5->pWal,psVar27,(uint)pPVar5->walSyncFlags,pPVar5->pageSize,zBuf)" ( (field_expression "pPVar5->pWal" identifier -> field_identifier) , identifier , (cast_expression "(uint)pPVar5->walSyncFlags" ( (type_descriptor "uint" type_identifier) ) (field_expression "pPVar5->walSyncFlags" identifier -> field_identifier)) , (field_expression "pPVar5->pageSize" identifier -> field_identifier) , identifier ))) ;) (expression_statement "pPVar5->pWal = (Wal *)0x0;" (assignment_expression "pPVar5->pWal = (Wal *)0x0" (field_expression "pPVar5->pWal" identifier -> field_identifier) = (cast_expression "(Wal *)0x0" ( (type_descriptor "Wal *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(pPVar5);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(pPVar5)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" ( (binary_expression "*(int *)(pcVar3 + 0xb7878) + 0x6cb0" (pointer_expression "*(int *)(pcVar3 + 0xb7878)" * (cast_expression "(int *)(pcVar3 + 0xb7878)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7878)" ( (binary_expression "pcVar3 + 0xb7878" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pPVar5)" ( identifier ))) ;) (if_statement "if (pPVar5->memDb == '\0') {\n    if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }\n    pagerUnlockAndRollback(pPVar5);\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }" if (parenthesized_expression "(pPVar5->memDb == '\0')" ( (binary_expression "pPVar5->memDb == '\0'" (field_expression "pPVar5->memDb" identifier -> field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }\n    pagerUnlockAndRollback(pPVar5);\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }" { (if_statement "if (pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }" if (parenthesized_expression "(pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0)" ( (binary_expression "pPVar5->jfd->pMethods != (sqlite3_io_methods *)0x0" (field_expression "pPVar5->jfd->pMethods" (field_expression "pPVar5->jfd" identifier -> field_identifier) -> field_identifier) != (cast_expression "(sqlite3_io_methods *)0x0" ( (type_descriptor "sqlite3_io_methods *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);\n    }" { (expression_statement "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();" (assignment_expression "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" identifier = (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x47e4" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( )))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(pPVar5,uVar11)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x447c)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x447c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pPVar5,uVar11)" ( identifier , identifier ))) ;) })) (expression_statement "pagerUnlockAndRollback(pPVar5);" (call_expression "pagerUnlockAndRollback(pPVar5)" identifier (argument_list "(pPVar5)" ( identifier ))) ;) (expression_statement "iVar26 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar26 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }" else (compound_statement "{\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();\n    iVar26 = *(int *)(pcVar3 + 0xb7814);\n  }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" ( (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x2314" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" * (cast_expression "(int *)(pcVar3 + 0xb78c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb78c0)" ( (binary_expression "pcVar3 + 0xb78c0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar26 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar26 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) }))) (expression_statement "(*(code *)(iVar26 + 0xd98))();" (call_expression "(*(code *)(iVar26 + 0xd98))()" (parenthesized_expression "(*(code *)(iVar26 + 0xd98))" ( (pointer_expression "*(code *)(iVar26 + 0xd98)" * (cast_expression "(code *)(iVar26 + 0xd98)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + 0xd98)" ( (binary_expression "iVar26 + 0xd98" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar26 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar26 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)(iVar26 + 0x968))(pPVar5->jfd);" (call_expression "(*(code *)(iVar26 + 0x968))(pPVar5->jfd)" (parenthesized_expression "(*(code *)(iVar26 + 0x968))" ( (pointer_expression "*(code *)(iVar26 + 0x968)" * (cast_expression "(code *)(iVar26 + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + 0x968)" ( (binary_expression "iVar26 + 0x968" identifier + number_literal) )))) )) (argument_list "(pPVar5->jfd)" ( (field_expression "pPVar5->jfd" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)(iVar26 + 0x968))(pPVar5->fd);" (call_expression "(*(code *)(iVar26 + 0x968))(pPVar5->fd)" (parenthesized_expression "(*(code *)(iVar26 + 0x968))" ( (pointer_expression "*(code *)(iVar26 + 0x968)" * (cast_expression "(code *)(iVar26 + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar26 + 0x968)" ( (binary_expression "iVar26 + 0x968" identifier + number_literal) )))) )) (argument_list "(pPVar5->fd)" ( (field_expression "pPVar5->fd" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(puVar24);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(puVar24)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" ( (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x52c" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" * (cast_expression "(int *)(pcVar3 + 0xb78c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb78c0)" ( (binary_expression "pcVar3 + 0xb78c0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(puVar24)" ( identifier ))) ;) (expression_statement "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))(pPVar5->pPCache->pCache);" (call_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))(pPVar5->pPCache->pCache)" (parenthesized_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))" ( (pointer_expression "**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" * (pointer_expression "*(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" * (cast_expression "(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7604) + -0x1adc" (pointer_expression "*(int *)(pcVar3 + 0xb7604)" * (cast_expression "(int *)(pcVar3 + 0xb7604)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7604)" ( (binary_expression "pcVar3 + 0xb7604" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(pPVar5->pPCache->pCache)" ( (field_expression "pPVar5->pPCache->pCache" (field_expression "pPVar5->pPCache" identifier -> field_identifier) -> field_identifier) ))) ;) (expression_statement "(**(code **)(pcVar3 + 0xb7634))(pPVar5);" (call_expression "(**(code **)(pcVar3 + 0xb7634))(pPVar5)" (parenthesized_expression "(**(code **)(pcVar3 + 0xb7634))" ( (pointer_expression "**(code **)(pcVar3 + 0xb7634)" * (pointer_expression "*(code **)(pcVar3 + 0xb7634)" * (cast_expression "(code **)(pcVar3 + 0xb7634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7634)" ( (binary_expression "pcVar3 + 0xb7634" identifier + number_literal) ))))) )) (argument_list "(pPVar5)" ( identifier ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "code *******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)\n\n{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}\n\n" (function_definition "code *******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)\n\n{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}" type_identifier (pointer_declarator "*******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "*****\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "****\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "***\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "**\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (pointer_declarator "*\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" * (function_declarator "sqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" identifier (parameter_list "(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" ( (parameter_declaration "code *******param_1" type_identifier (pointer_declarator "*******param_1" * (pointer_declarator "******param_1" * (pointer_declarator "*****param_1" * (pointer_declarator "****param_1" * (pointer_declarator "***param_1" * (pointer_declarator "**param_1" * (pointer_declarator "*param_1" * identifier)))))))) , (parameter_declaration "code *******param_2" type_identifier (pointer_declarator "*******param_2" * (pointer_declarator "******param_2" * (pointer_declarator "*****param_2" * (pointer_declarator "****param_2" * (pointer_declarator "***param_2" * (pointer_declarator "**param_2" * (pointer_declarator "*param_2" * identifier)))))))) , (parameter_declaration "code *******param_3" type_identifier (pointer_declarator "*******param_3" * (pointer_declarator "******param_3" * (pointer_declarator "*****param_3" * (pointer_declarator "****param_3" * (pointer_declarator "***param_3" * (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier)))))))) , (parameter_declaration "code *******param_4" type_identifier (pointer_declarator "*******param_4" * (pointer_declarator "******param_4" * (pointer_declarator "*****param_4" * (pointer_declarator "****param_4" * (pointer_declarator "***param_4" * (pointer_declarator "**param_4" * (pointer_declarator "*param_4" * identifier)))))))) )))))))))) (compound_statement "{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "code *****pppppcVar2;" type_identifier (pointer_declarator "*****pppppcVar2" * (pointer_declarator "****pppppcVar2" * (pointer_declarator "***pppppcVar2" * (pointer_declarator "**pppppcVar2" * (pointer_declarator "*pppppcVar2" * identifier))))) ;) (declaration "code *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "code ****ppppcVar5;" type_identifier (pointer_declarator "****ppppcVar5" * (pointer_declarator "***ppppcVar5" * (pointer_declarator "**ppppcVar5" * (pointer_declarator "*ppppcVar5" * identifier)))) ;) (declaration "code *******pppppppcVar6;" type_identifier (pointer_declarator "*******pppppppcVar6" * (pointer_declarator "******pppppppcVar6" * (pointer_declarator "*****pppppppcVar6" * (pointer_declarator "****pppppppcVar6" * (pointer_declarator "***pppppppcVar6" * (pointer_declarator "**pppppppcVar6" * (pointer_declarator "*pppppppcVar6" * identifier))))))) ;) (declaration "code *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined2 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined4 uVar11;" type_identifier identifier ;) (declaration "code ***pppcVar12;" type_identifier (pointer_declarator "***pppcVar12" * (pointer_declarator "**pppcVar12" * (pointer_declarator "*pppcVar12" * identifier))) ;) (declaration "int extraout_v1;" primitive_type identifier ;) (declaration "undefined2 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "code ******ppppppcVar15;" type_identifier (pointer_declarator "******ppppppcVar15" * (pointer_declarator "*****ppppppcVar15" * (pointer_declarator "****ppppppcVar15" * (pointer_declarator "***ppppppcVar15" * (pointer_declarator "**ppppppcVar15" * (pointer_declarator "*ppppppcVar15" * identifier)))))) ;) (declaration "code *******pppppppcVar16;" type_identifier (pointer_declarator "*******pppppppcVar16" * (pointer_declarator "******pppppppcVar16" * (pointer_declarator "*****pppppppcVar16" * (pointer_declarator "****pppppppcVar16" * (pointer_declarator "***pppppppcVar16" * (pointer_declarator "**pppppppcVar16" * (pointer_declarator "*pppppppcVar16" * identifier))))))) ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "code *******pppppppcVar21;" type_identifier (pointer_declarator "*******pppppppcVar21" * (pointer_declarator "******pppppppcVar21" * (pointer_declarator "*****pppppppcVar21" * (pointer_declarator "****pppppppcVar21" * (pointer_declarator "***pppppppcVar21" * (pointer_declarator "**pppppppcVar21" * (pointer_declarator "*pppppppcVar21" * identifier))))))) ;) (declaration "code *******unaff_s2;" type_identifier (pointer_declarator "*******unaff_s2" * (pointer_declarator "******unaff_s2" * (pointer_declarator "*****unaff_s2" * (pointer_declarator "****unaff_s2" * (pointer_declarator "***unaff_s2" * (pointer_declarator "**unaff_s2" * (pointer_declarator "*unaff_s2" * identifier))))))) ;) (declaration "code *******unaff_s3;" type_identifier (pointer_declarator "*******unaff_s3" * (pointer_declarator "******unaff_s3" * (pointer_declarator "*****unaff_s3" * (pointer_declarator "****unaff_s3" * (pointer_declarator "***unaff_s3" * (pointer_declarator "**unaff_s3" * (pointer_declarator "*unaff_s3" * identifier))))))) ;) (declaration "code *******unaff_s5;" type_identifier (pointer_declarator "*******unaff_s5" * (pointer_declarator "******unaff_s5" * (pointer_declarator "*****unaff_s5" * (pointer_declarator "****unaff_s5" * (pointer_declarator "***unaff_s5" * (pointer_declarator "**unaff_s5" * (pointer_declarator "*unaff_s5" * identifier))))))) ;) (declaration "code *******unaff_s6;" type_identifier (pointer_declarator "*******unaff_s6" * (pointer_declarator "******unaff_s6" * (pointer_declarator "*****unaff_s6" * (pointer_declarator "****unaff_s6" * (pointer_declarator "***unaff_s6" * (pointer_declarator "**unaff_s6" * (pointer_declarator "*unaff_s6" * identifier))))))) ;) (declaration "code *unaff_s7;" type_identifier (pointer_declarator "*unaff_s7" * identifier) ;) (declaration "undefined *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "code *******unaff_s8;" type_identifier (pointer_declarator "*******unaff_s8" * (pointer_declarator "******unaff_s8" * (pointer_declarator "*****unaff_s8" * (pointer_declarator "****unaff_s8" * (pointer_declarator "***unaff_s8" * (pointer_declarator "**unaff_s8" * (pointer_declarator "*unaff_s8" * identifier))))))) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "code *******pppppppcVar24;" type_identifier (pointer_declarator "*******pppppppcVar24" * (pointer_declarator "******pppppppcVar24" * (pointer_declarator "*****pppppppcVar24" * (pointer_declarator "****pppppppcVar24" * (pointer_declarator "***pppppppcVar24" * (pointer_declarator "**pppppppcVar24" * (pointer_declarator "*pppppppcVar24" * identifier))))))) ;) (declaration "code *******pppppppcVar25;" type_identifier (pointer_declarator "*******pppppppcVar25" * (pointer_declarator "******pppppppcVar25" * (pointer_declarator "*****pppppppcVar25" * (pointer_declarator "****pppppppcVar25" * (pointer_declarator "***pppppppcVar25" * (pointer_declarator "**pppppppcVar25" * (pointer_declarator "*pppppppcVar25" * identifier))))))) ;) (declaration "int iStack_1d8;" primitive_type identifier ;) (declaration "int iStack_1d4;" primitive_type identifier ;) (declaration "code ******ppppppcStack_1cc;" type_identifier (pointer_declarator "******ppppppcStack_1cc" * (pointer_declarator "*****ppppppcStack_1cc" * (pointer_declarator "****ppppppcStack_1cc" * (pointer_declarator "***ppppppcStack_1cc" * (pointer_declarator "**ppppppcStack_1cc" * (pointer_declarator "*ppppppcStack_1cc" * identifier)))))) ;) (declaration "code ******ppppppcStack_1c8;" type_identifier (pointer_declarator "******ppppppcStack_1c8" * (pointer_declarator "*****ppppppcStack_1c8" * (pointer_declarator "****ppppppcStack_1c8" * (pointer_declarator "***ppppppcStack_1c8" * (pointer_declarator "**ppppppcStack_1c8" * (pointer_declarator "*ppppppcStack_1c8" * identifier)))))) ;) (declaration "code ******ppppppcStack_1c4;" type_identifier (pointer_declarator "******ppppppcStack_1c4" * (pointer_declarator "*****ppppppcStack_1c4" * (pointer_declarator "****ppppppcStack_1c4" * (pointer_declarator "***ppppppcStack_1c4" * (pointer_declarator "**ppppppcStack_1c4" * (pointer_declarator "*ppppppcStack_1c4" * identifier)))))) ;) (declaration "code ******ppppppcStack_1c0;" type_identifier (pointer_declarator "******ppppppcStack_1c0" * (pointer_declarator "*****ppppppcStack_1c0" * (pointer_declarator "****ppppppcStack_1c0" * (pointer_declarator "***ppppppcStack_1c0" * (pointer_declarator "**ppppppcStack_1c0" * (pointer_declarator "*ppppppcStack_1c0" * identifier)))))) ;) (declaration "code ******ppppppcStack_1bc;" type_identifier (pointer_declarator "******ppppppcStack_1bc" * (pointer_declarator "*****ppppppcStack_1bc" * (pointer_declarator "****ppppppcStack_1bc" * (pointer_declarator "***ppppppcStack_1bc" * (pointer_declarator "**ppppppcStack_1bc" * (pointer_declarator "*ppppppcStack_1bc" * identifier)))))) ;) (declaration "code ******ppppppcStack_1b8;" type_identifier (pointer_declarator "******ppppppcStack_1b8" * (pointer_declarator "*****ppppppcStack_1b8" * (pointer_declarator "****ppppppcStack_1b8" * (pointer_declarator "***ppppppcStack_1b8" * (pointer_declarator "**ppppppcStack_1b8" * (pointer_declarator "*ppppppcStack_1b8" * identifier)))))) ;) (declaration "code *pcStack_1b4;" type_identifier (pointer_declarator "*pcStack_1b4" * identifier) ;) (declaration "undefined8 uStack_1a0;" type_identifier identifier ;) (declaration "undefined *puStack_198;" type_identifier (pointer_declarator "*puStack_198" * identifier) ;) (declaration "code ******ppppppcStack_18c;" type_identifier (pointer_declarator "******ppppppcStack_18c" * (pointer_declarator "*****ppppppcStack_18c" * (pointer_declarator "****ppppppcStack_18c" * (pointer_declarator "***ppppppcStack_18c" * (pointer_declarator "**ppppppcStack_18c" * (pointer_declarator "*ppppppcStack_18c" * identifier)))))) ;) (declaration "code ******ppppppcStack_188;" type_identifier (pointer_declarator "******ppppppcStack_188" * (pointer_declarator "*****ppppppcStack_188" * (pointer_declarator "****ppppppcStack_188" * (pointer_declarator "***ppppppcStack_188" * (pointer_declarator "**ppppppcStack_188" * (pointer_declarator "*ppppppcStack_188" * identifier)))))) ;) (declaration "code ******ppppppcStack_184;" type_identifier (pointer_declarator "******ppppppcStack_184" * (pointer_declarator "*****ppppppcStack_184" * (pointer_declarator "****ppppppcStack_184" * (pointer_declarator "***ppppppcStack_184" * (pointer_declarator "**ppppppcStack_184" * (pointer_declarator "*ppppppcStack_184" * identifier)))))) ;) (declaration "code ******ppppppcStack_180;" type_identifier (pointer_declarator "******ppppppcStack_180" * (pointer_declarator "*****ppppppcStack_180" * (pointer_declarator "****ppppppcStack_180" * (pointer_declarator "***ppppppcStack_180" * (pointer_declarator "**ppppppcStack_180" * (pointer_declarator "*ppppppcStack_180" * identifier)))))) ;) (declaration "code ***pppcStack_17c;" type_identifier (pointer_declarator "***pppcStack_17c" * (pointer_declarator "**pppcStack_17c" * (pointer_declarator "*pppcStack_17c" * identifier))) ;) (declaration "code ******ppppppcStack_178;" type_identifier (pointer_declarator "******ppppppcStack_178" * (pointer_declarator "*****ppppppcStack_178" * (pointer_declarator "****ppppppcStack_178" * (pointer_declarator "***ppppppcStack_178" * (pointer_declarator "**ppppppcStack_178" * (pointer_declarator "*ppppppcStack_178" * identifier)))))) ;) (declaration "undefined4 uStack_174;" type_identifier identifier ;) (declaration "code ******ppppppcStack_170;" type_identifier (pointer_declarator "******ppppppcStack_170" * (pointer_declarator "*****ppppppcStack_170" * (pointer_declarator "****ppppppcStack_170" * (pointer_declarator "***ppppppcStack_170" * (pointer_declarator "**ppppppcStack_170" * (pointer_declarator "*ppppppcStack_170" * identifier)))))) ;) (declaration "code ******ppppppcStack_16c;" type_identifier (pointer_declarator "******ppppppcStack_16c" * (pointer_declarator "*****ppppppcStack_16c" * (pointer_declarator "****ppppppcStack_16c" * (pointer_declarator "***ppppppcStack_16c" * (pointer_declarator "**ppppppcStack_16c" * (pointer_declarator "*ppppppcStack_16c" * identifier)))))) ;) (declaration "code ******ppppppcStack_168;" type_identifier (pointer_declarator "******ppppppcStack_168" * (pointer_declarator "*****ppppppcStack_168" * (pointer_declarator "****ppppppcStack_168" * (pointer_declarator "***ppppppcStack_168" * (pointer_declarator "**ppppppcStack_168" * (pointer_declarator "*ppppppcStack_168" * identifier)))))) ;) (declaration "undefined4 *puStack_164;" type_identifier (pointer_declarator "*puStack_164" * identifier) ;) (declaration "uint uStack_160;" type_identifier identifier ;) (declaration "code ******ppppppcStack_15c;" type_identifier (pointer_declarator "******ppppppcStack_15c" * (pointer_declarator "*****ppppppcStack_15c" * (pointer_declarator "****ppppppcStack_15c" * (pointer_declarator "***ppppppcStack_15c" * (pointer_declarator "**ppppppcStack_15c" * (pointer_declarator "*ppppppcStack_15c" * identifier)))))) ;) (declaration "code ******ppppppcStack_158;" type_identifier (pointer_declarator "******ppppppcStack_158" * (pointer_declarator "*****ppppppcStack_158" * (pointer_declarator "****ppppppcStack_158" * (pointer_declarator "***ppppppcStack_158" * (pointer_declarator "**ppppppcStack_158" * (pointer_declarator "*ppppppcStack_158" * identifier)))))) ;) (declaration "int iStack_154;" primitive_type identifier ;) (declaration "undefined2 *puStack_150;" type_identifier (pointer_declarator "*puStack_150" * identifier) ;) (declaration "code *pcStack_14c;" type_identifier (pointer_declarator "*pcStack_14c" * identifier) ;) (declaration "code *****pppppcStack_148;" type_identifier (pointer_declarator "*****pppppcStack_148" * (pointer_declarator "****pppppcStack_148" * (pointer_declarator "***pppppcStack_148" * (pointer_declarator "**pppppcStack_148" * (pointer_declarator "*pppppcStack_148" * identifier))))) ;) (declaration "code *pcStack_144;" type_identifier (pointer_declarator "*pcStack_144" * identifier) ;) (declaration "code ******ppppppcStack_140;" type_identifier (pointer_declarator "******ppppppcStack_140" * (pointer_declarator "*****ppppppcStack_140" * (pointer_declarator "****ppppppcStack_140" * (pointer_declarator "***ppppppcStack_140" * (pointer_declarator "**ppppppcStack_140" * (pointer_declarator "*ppppppcStack_140" * identifier)))))) ;) (declaration "code ******ppppppcStack_13c;" type_identifier (pointer_declarator "******ppppppcStack_13c" * (pointer_declarator "*****ppppppcStack_13c" * (pointer_declarator "****ppppppcStack_13c" * (pointer_declarator "***ppppppcStack_13c" * (pointer_declarator "**ppppppcStack_13c" * (pointer_declarator "*ppppppcStack_13c" * identifier)))))) ;) (declaration "undefined4 *puStack_138;" type_identifier (pointer_declarator "*puStack_138" * identifier) ;) (declaration "code ******ppppppcStack_134;" type_identifier (pointer_declarator "******ppppppcStack_134" * (pointer_declarator "*****ppppppcStack_134" * (pointer_declarator "****ppppppcStack_134" * (pointer_declarator "***ppppppcStack_134" * (pointer_declarator "**ppppppcStack_134" * (pointer_declarator "*ppppppcStack_134" * identifier)))))) ;) (declaration "int iStack_130;" primitive_type identifier ;) (declaration "code *****pppppcStack_12c;" type_identifier (pointer_declarator "*****pppppcStack_12c" * (pointer_declarator "****pppppcStack_12c" * (pointer_declarator "***pppppcStack_12c" * (pointer_declarator "**pppppcStack_12c" * (pointer_declarator "*pppppcStack_12c" * identifier))))) ;) (declaration "undefined8 uStack_128;" type_identifier identifier ;) (declaration "code *****pppppcStack_120;" type_identifier (pointer_declarator "*****pppppcStack_120" * (pointer_declarator "****pppppcStack_120" * (pointer_declarator "***pppppcStack_120" * (pointer_declarator "**pppppcStack_120" * (pointer_declarator "*pppppcStack_120" * identifier))))) ;) (declaration "code ******ppppppcStack_11c;" type_identifier (pointer_declarator "******ppppppcStack_11c" * (pointer_declarator "*****ppppppcStack_11c" * (pointer_declarator "****ppppppcStack_11c" * (pointer_declarator "***ppppppcStack_11c" * (pointer_declarator "**ppppppcStack_11c" * (pointer_declarator "*ppppppcStack_11c" * identifier)))))) ;) (declaration "int iStack_118;" primitive_type identifier ;) (declaration "code *****apppppcStack_114 [27];" type_identifier (pointer_declarator "*****apppppcStack_114 [27]" * (pointer_declarator "****apppppcStack_114 [27]" * (pointer_declarator "***apppppcStack_114 [27]" * (pointer_declarator "**apppppcStack_114 [27]" * (pointer_declarator "*apppppcStack_114 [27]" * (array_declarator "apppppcStack_114 [27]" identifier [ number_literal ])))))) ;) (declaration "code ******ppppppcStack_a8;" type_identifier (pointer_declarator "******ppppppcStack_a8" * (pointer_declarator "*****ppppppcStack_a8" * (pointer_declarator "****ppppppcStack_a8" * (pointer_declarator "***ppppppcStack_a8" * (pointer_declarator "**ppppppcStack_a8" * (pointer_declarator "*ppppppcStack_a8" * identifier)))))) ;) (declaration "code ******ppppppcStack_a4;" type_identifier (pointer_declarator "******ppppppcStack_a4" * (pointer_declarator "*****ppppppcStack_a4" * (pointer_declarator "****ppppppcStack_a4" * (pointer_declarator "***ppppppcStack_a4" * (pointer_declarator "**ppppppcStack_a4" * (pointer_declarator "*ppppppcStack_a4" * identifier)))))) ;) (declaration "code ******ppppppcStack_a0;" type_identifier (pointer_declarator "******ppppppcStack_a0" * (pointer_declarator "*****ppppppcStack_a0" * (pointer_declarator "****ppppppcStack_a0" * (pointer_declarator "***ppppppcStack_a0" * (pointer_declarator "**ppppppcStack_a0" * (pointer_declarator "*ppppppcStack_a0" * identifier)))))) ;) (declaration "code ******ppppppcStack_9c;" type_identifier (pointer_declarator "******ppppppcStack_9c" * (pointer_declarator "*****ppppppcStack_9c" * (pointer_declarator "****ppppppcStack_9c" * (pointer_declarator "***ppppppcStack_9c" * (pointer_declarator "**ppppppcStack_9c" * (pointer_declarator "*ppppppcStack_9c" * identifier)))))) ;) (declaration "code ******ppppppcStack_98;" type_identifier (pointer_declarator "******ppppppcStack_98" * (pointer_declarator "*****ppppppcStack_98" * (pointer_declarator "****ppppppcStack_98" * (pointer_declarator "***ppppppcStack_98" * (pointer_declarator "**ppppppcStack_98" * (pointer_declarator "*ppppppcStack_98" * identifier)))))) ;) (declaration "code ******ppppppcStack_94;" type_identifier (pointer_declarator "******ppppppcStack_94" * (pointer_declarator "*****ppppppcStack_94" * (pointer_declarator "****ppppppcStack_94" * (pointer_declarator "***ppppppcStack_94" * (pointer_declarator "**ppppppcStack_94" * (pointer_declarator "*ppppppcStack_94" * identifier)))))) ;) (declaration "code ******ppppppcStack_90;" type_identifier (pointer_declarator "******ppppppcStack_90" * (pointer_declarator "*****ppppppcStack_90" * (pointer_declarator "****ppppppcStack_90" * (pointer_declarator "***ppppppcStack_90" * (pointer_declarator "**ppppppcStack_90" * (pointer_declarator "*ppppppcStack_90" * identifier)))))) ;) (declaration "code *pcStack_8c;" type_identifier (pointer_declarator "*pcStack_8c" * identifier) ;) (declaration "code ******ppppppcStack_88;" type_identifier (pointer_declarator "******ppppppcStack_88" * (pointer_declarator "*****ppppppcStack_88" * (pointer_declarator "****ppppppcStack_88" * (pointer_declarator "***ppppppcStack_88" * (pointer_declarator "**ppppppcStack_88" * (pointer_declarator "*ppppppcStack_88" * identifier)))))) ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "code ******ppppppcStack_78;" type_identifier (pointer_declarator "******ppppppcStack_78" * (pointer_declarator "*****ppppppcStack_78" * (pointer_declarator "****ppppppcStack_78" * (pointer_declarator "***ppppppcStack_78" * (pointer_declarator "**ppppppcStack_78" * (pointer_declarator "*ppppppcStack_78" * identifier)))))) ;) (declaration "code ******local_70;" type_identifier (pointer_declarator "******local_70" * (pointer_declarator "*****local_70" * (pointer_declarator "****local_70" * (pointer_declarator "***local_70" * (pointer_declarator "**local_70" * (pointer_declarator "*local_70" * identifier)))))) ;) (declaration "code ******local_6c;" type_identifier (pointer_declarator "******local_6c" * (pointer_declarator "*****local_6c" * (pointer_declarator "****local_6c" * (pointer_declarator "***local_6c" * (pointer_declarator "**local_6c" * (pointer_declarator "*local_6c" * identifier)))))) ;) (declaration "undefined4 uStack_64;" type_identifier identifier ;) (declaration "code ***local_60;" type_identifier (pointer_declarator "***local_60" * (pointer_declarator "**local_60" * (pointer_declarator "*local_60" * identifier))) ;) (declaration "code ******local_5c;" type_identifier (pointer_declarator "******local_5c" * (pointer_declarator "*****local_5c" * (pointer_declarator "****local_5c" * (pointer_declarator "***local_5c" * (pointer_declarator "**local_5c" * (pointer_declarator "*local_5c" * identifier)))))) ;) (declaration "code *****local_50;" type_identifier (pointer_declarator "*****local_50" * (pointer_declarator "****local_50" * (pointer_declarator "***local_50" * (pointer_declarator "**local_50" * (pointer_declarator "*local_50" * identifier))))) ;) (declaration "code ***local_4c;" type_identifier (pointer_declarator "***local_4c" * (pointer_declarator "**local_4c" * (pointer_declarator "*local_4c" * identifier))) ;) (declaration "code ******local_40;" type_identifier (pointer_declarator "******local_40" * (pointer_declarator "*****local_40" * (pointer_declarator "****local_40" * (pointer_declarator "***local_40" * (pointer_declarator "**local_40" * (pointer_declarator "*local_40" * identifier)))))) ;) (declaration "code ******local_38;" type_identifier (pointer_declarator "******local_38" * (pointer_declarator "*****local_38" * (pointer_declarator "****local_38" * (pointer_declarator "***local_38" * (pointer_declarator "**local_38" * (pointer_declarator "*local_38" * identifier)))))) ;) (declaration "code ******local_34;" type_identifier (pointer_declarator "******local_34" * (pointer_declarator "*****local_34" * (pointer_declarator "****local_34" * (pointer_declarator "***local_34" * (pointer_declarator "**local_34" * (pointer_declarator "*local_34" * identifier)))))) ;) (declaration "uint local_2c;" type_identifier identifier ;) (expression_statement "local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;" (assignment_expression "local_2c = *(uint *)PTR___stack_chk_guard_0018fecc" identifier = (pointer_expression "*(uint *)PTR___stack_chk_guard_0018fecc" * (cast_expression "(uint *)PTR___stack_chk_guard_0018fecc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pppppppcVar24 = param_2;" (assignment_expression "pppppppcVar24 = param_2" identifier = identifier) ;) (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" * (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1[5][3])" ( (subscript_expression "param_1[5][3]" (subscript_expression "param_1[5]" identifier [ number_literal ]) [ number_literal ]) ))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" ( (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" * (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" ( (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" identifier + number_literal) )))) )) (argument_list "(param_1[6])" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) (if_statement "if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" if (parenthesized_expression "(*param_1 == (code ******)0x0)" ( (binary_expression "*param_1 == (code ******)0x0" (pointer_expression "*param_1" * identifier) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }" { (expression_statement "pppppppcVar21 = (code *******)param_1[7];" (assignment_expression "pppppppcVar21 = (code *******)param_1[7]" identifier = (cast_expression "(code *******)param_1[7]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[7]" identifier [ number_literal ]))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d7330;" goto statement_identifier ;)) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "local_60 = (code ***)*ppppppcVar15[1];" (assignment_expression "local_60 = (code ***)*ppppppcVar15[1]" identifier = (cast_expression "(code ***)*ppppppcVar15[1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*ppppppcVar15[1]" * (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])))) ;) (expression_statement "local_4c = (code ***)*param_1[1][1];" (assignment_expression "local_4c = (code ***)*param_1[1][1]" identifier = (cast_expression "(code ***)*param_1[1][1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ])))) ;) (labeled_statement "LAB_000d69a8:\n    param_3 = (code *******)0x0;" statement_identifier : (expression_statement "param_3 = (code *******)0x0;" (assignment_expression "param_3 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (if_statement "if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" if (parenthesized_expression "(*(char *)(ppppppcVar15 + 2) == '\0')" ( (binary_expression "*(char *)(ppppppcVar15 + 2) == '\0'" (pointer_expression "*(char *)(ppppppcVar15 + 2)" * (cast_expression "(char *)(ppppppcVar15 + 2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppppcVar15 + 2)" ( (binary_expression "ppppppcVar15 + 2" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }" { (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb3f8();" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb3f8()" identifier = (cast_expression "(code *******)FUN_000cb3f8()" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cb3f8()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" if (parenthesized_expression "(param_1[3] == (code ******)0x0)" ( (binary_expression "param_1[3] == (code ******)0x0" (subscript_expression "param_1[3]" identifier [ number_literal ]) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" { (expression_statement "local_50 = (code *****)0x1;" (assignment_expression "local_50 = (code *****)0x1" identifier = (cast_expression "(code *****)0x1" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;)) (goto_statement "goto LAB_000d6aa4;" goto statement_identifier ;) })) (expression_statement "local_50 = (code *****)0x1;" (assignment_expression "local_50 = (code *****)0x1" identifier = (cast_expression "(code *****)0x1" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (labeled_statement "LAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" statement_identifier : (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;))) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" else (compound_statement "{\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" { (expression_statement "local_50 = (code *****)param_1[3];" (assignment_expression "local_50 = (code *****)param_1[3]" identifier = (cast_expression "(code *****)param_1[3]" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (subscript_expression "param_1[3]" identifier [ number_literal ]))) ;) (if_statement "if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" if (parenthesized_expression "((code ******)local_50 == (code ******)0x0)" ( (binary_expression "(code ******)local_50 == (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" { (labeled_statement "LAB_000d6aa4:\n        param_4 = (code *******)0x0;" statement_identifier : (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (expression_statement "param_3 = (code *******)0xffffffff;" (assignment_expression "param_3 = (code *******)0xffffffff" identifier = (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)param_1[6][1][8];" (assignment_expression "pppppppcVar24 = (code *******)param_1[6][1][8]" identifier = (cast_expression "(code *******)param_1[6][1][8]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) ;) (expression_statement "iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);" (assignment_expression "iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1])" identifier = (call_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fc04 + 0xc6c)" * (cast_expression "(code *)(PTR_LAB_0018fc04 + 0xc6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fc04 + 0xc6c)" ( (binary_expression "PTR_LAB_0018fc04 + 0xc6c" identifier + number_literal) )))) )) (argument_list "(param_1[1])" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) )))) ;) (if_statement "if (iVar23 != 7) goto LAB_000d69c4;" if (parenthesized_expression "(iVar23 != 7)" ( (binary_expression "iVar23 != 7" identifier != number_literal) )) (goto_statement "goto LAB_000d69c4;" goto statement_identifier ;)) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (goto_statement "goto LAB_000d6a48;" goto statement_identifier ;) })) (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (labeled_statement "LAB_000d69c4:\n      param_3 = param_1 + 2;" statement_identifier : (expression_statement "param_3 = param_1 + 2;" (assignment_expression "param_3 = param_1 + 2" identifier = (binary_expression "param_1 + 2" identifier + number_literal)) ;)) (if_statement "if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }" if (parenthesized_expression "(param_1[3] == (code ******)0x0)" ( (binary_expression "param_1[3] == (code ******)0x0" (subscript_expression "param_1[3]" identifier [ number_literal ]) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }" { (expression_statement "pppppppcVar24 = (code *******)0x2;" (assignment_expression "pppppppcVar24 = (code *******)0x2" identifier = (cast_expression "(code *******)0x2" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1])" identifier = (cast_expression "(code *******)FUN_000cb3f8(param_1[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cb3f8(param_1[1])" identifier (argument_list "(param_1[1])" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6a44;" goto statement_identifier ;)) (expression_statement "param_1[3] = (code ******)0x1;" (assignment_expression "param_1[3] = (code ******)0x1" (subscript_expression "param_1[3]" identifier [ number_literal ]) = (cast_expression "(code ******)0x1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) })) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) }))) (expression_statement "pppppcVar2 = ppppppcVar15[1];" (assignment_expression "pppppcVar2 = ppppppcVar15[1]" identifier = (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])) ;) (expression_statement "local_5c = (code ******)pppppcVar2[8];" (assignment_expression "local_5c = (code ******)pppppcVar2[8]" identifier = (cast_expression "(code ******)pppppcVar2[8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "pppppcVar2[8]" identifier [ number_literal ]))) ;) (expression_statement "local_40 = (code ******)param_1[1][1][8];" (assignment_expression "local_40 = (code ******)param_1[1][1][8]" identifier = (cast_expression "(code ******)param_1[1][1][8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) ;) (expression_statement "cVar1 = *(char *)((int)*param_1[1][1] + 5);" (assignment_expression "cVar1 = *(char *)((int)*param_1[1][1] + 5)" identifier = (pointer_expression "*(char *)((int)*param_1[1][1] + 5)" * (cast_expression "(char *)((int)*param_1[1][1] + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*param_1[1][1] + 5)" ( (binary_expression "(int)*param_1[1][1] + 5" (cast_expression "(int)*param_1[1][1]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]))) + number_literal) ))))) ;) (if_statement "if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }" if (parenthesized_expression "(cVar1 == '\x05')" ( (binary_expression "cVar1 == '\x05'" identifier == (char_literal "'\x05'" ' escape_sequence ')) )) (compound_statement "{\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }" { (expression_statement "pppppppcVar21 = (code *******)&DAT_00000008;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000008" identifier = (cast_expression "(code *******)&DAT_00000008" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000008" & identifier))) ;) (if_statement "if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }" if (parenthesized_expression "(local_40 == local_5c)" ( (binary_expression "local_40 == local_5c" identifier == identifier) )) (compound_statement "{\n        pppppppcVar21 = (code *******)0x0;\n      }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) })) }) (else_clause "else {\n      pppppppcVar21 = (code *******)0x0;\n    }" else (compound_statement "{\n      pppppppcVar21 = (code *******)0x0;\n    }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }))) (labeled_statement "LAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;" statement_identifier : (expression_statement "unaff_s6 = (code *******)PTR_DAT_0018f948;" (assignment_expression "unaff_s6 = (code *******)PTR_DAT_0018f948" identifier = (cast_expression "(code *******)PTR_DAT_0018f948" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;)) (expression_statement "unaff_s5 = (code *******)pppppcVar2[0xb];" (assignment_expression "unaff_s5 = (code *******)pppppcVar2[0xb]" identifier = (cast_expression "(code *******)pppppcVar2[0xb]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppcVar2[0xb]" identifier [ number_literal ]))) ;) (expression_statement "unaff_s8 = &local_38;" (assignment_expression "unaff_s8 = &local_38" identifier = (pointer_expression "&local_38" & identifier)) ;) (expression_statement "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);" (assignment_expression "pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8)" identifier = (cast_expression "(code *)(PTR_DAT_0018fbc8 + 0x6de8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018fbc8 + 0x6de8)" ( (binary_expression "PTR_DAT_0018fbc8 + 0x6de8" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (for_statement "for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }" for ( (assignment_expression "unaff_s3 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ; (parenthesized_expression "((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2))" ( (binary_expression "(int)param_2 < 0 || ((int)unaff_s3 < (int)param_2)" (binary_expression "(int)param_2 < 0" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) || (parenthesized_expression "((int)unaff_s3 < (int)param_2)" ( (binary_expression "(int)unaff_s3 < (int)param_2" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) ; (assignment_expression "unaff_s3 = (code *******)((int)unaff_s3 + 1)" identifier = (cast_expression "(code *******)((int)unaff_s3 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s3 + 1)" ( (binary_expression "(int)unaff_s3 + 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ) (compound_statement "{\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }" { (expression_statement "unaff_s2 = (code *******)param_1[4];" (assignment_expression "unaff_s2 = (code *******)param_1[4]" identifier = (cast_expression "(code *******)param_1[4]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[4]" identifier [ number_literal ]))) ;) (if_statement "if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" if (parenthesized_expression "(unaff_s5 < unaff_s2)" ( (binary_expression "unaff_s5 < unaff_s2" identifier < identifier) )) (compound_statement "{\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" { (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }" { (expression_statement "param_1[9] = (code ******)unaff_s5;" (assignment_expression "param_1[9] = (code ******)unaff_s5" (subscript_expression "param_1[9]" identifier [ number_literal ]) = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));" (assignment_expression "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (subscript_expression "param_1[8]" identifier [ number_literal ]) = (cast_expression "(code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)unaff_s5 + (1 - (int)param_1[4]))" ( (binary_expression "(int)unaff_s5 + (1 - (int)param_1[4])" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(1 - (int)param_1[4])" ( (binary_expression "1 - (int)param_1[4]" number_literal - (cast_expression "(int)param_1[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[4]" identifier [ number_literal ]))) ))) )))) ;) (goto_statement "goto LAB_000d6c9c;" goto statement_identifier ;) })) (goto_statement "goto LAB_000d6c94;" goto statement_identifier ;) })) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6c94;" goto statement_identifier ;)) (if_statement "if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }" if (parenthesized_expression "(param_1[6][1][8] == (code ****)0x0)" ( (binary_expression "param_1[6][1][8] == (code ****)0x0" (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]) == (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "param_4 = (code *******)0x2;" (assignment_expression "param_4 = (code *******)0x2" identifier = (cast_expression "(code *******)0x2" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }" if (parenthesized_expression "(((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0))" ( (binary_expression "((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)" (parenthesized_expression "((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2)" ( (binary_expression "(code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2" (cast_expression "(code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1)" ( (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1" (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8]" (pointer_expression "*(uint *)((int)unaff_s6 + -0x1b80)" * (cast_expression "(uint *)((int)unaff_s6 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s6 + -0x1b80)" ( (binary_expression "(int)unaff_s6 + -0x1b80" (cast_expression "(int)unaff_s6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) / (cast_expression "(uint)param_1[6][1][8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) + number_literal) ))) != identifier) )) && (parenthesized_expression "(pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)" ( (comma_expression "pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar24 = unaff_s2" identifier = identifier) , (comma_expression "param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "param_3 = unaff_s8" identifier = identifier) , (comma_expression "pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)(*unaff_s7)(local_60)" identifier = (cast_expression "(code *******)(*unaff_s7)(local_60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*unaff_s7)(local_60)" (parenthesized_expression "(*unaff_s7)" ( (pointer_expression "*unaff_s7" * identifier) )) (argument_list "(local_60)" ( identifier ))))) , (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))))) ))) )) (compound_statement "{\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }" { (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "param_3 = (code *******)local_38[1];" (assignment_expression "param_3 = (code *******)local_38[1]" identifier = (cast_expression "(code *******)local_38[1]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_38[1]" identifier [ number_literal ]))) ;) (expression_statement "pppppppcVar24 = unaff_s2;" (assignment_expression "pppppppcVar24 = unaff_s2" identifier = identifier) ;) (expression_statement "pppppppcVar21 = (code *******)(*pcVar3)(param_1);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar3)(param_1)" identifier = (cast_expression "(code *******)(*pcVar3)(param_1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar3)(param_1)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(param_1)" ( identifier ))))) ;) (expression_statement "(*pcVar4)(local_38);" (call_expression "(*pcVar4)(local_38)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(local_38)" ( identifier ))) ;) })) (expression_statement "param_1[4] = (code ******)((int)param_1[4] + 1);" (assignment_expression "param_1[4] = (code ******)((int)param_1[4] + 1)" (subscript_expression "param_1[4]" identifier [ number_literal ]) = (cast_expression "(code ******)((int)param_1[4] + 1)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)param_1[4] + 1)" ( (binary_expression "(int)param_1[4] + 1" (cast_expression "(int)param_1[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[4]" identifier [ number_literal ])) + number_literal) )))) ;) })) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" { (expression_statement "param_1[9] = (code ******)unaff_s5;" (assignment_expression "param_1[9] = (code ******)unaff_s5" (subscript_expression "param_1[9]" identifier [ number_literal ]) = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));" (assignment_expression "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (subscript_expression "param_1[8]" identifier [ number_literal ]) = (cast_expression "(code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)unaff_s5 + (1 - (int)param_1[4]))" ( (binary_expression "(int)unaff_s5 + (1 - (int)param_1[4])" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(1 - (int)param_1[4])" ( (binary_expression "1 - (int)param_1[4]" number_literal - (cast_expression "(int)param_1[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[4]" identifier [ number_literal ]))) ))) )))) ;) (if_statement "if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;" if (parenthesized_expression "(unaff_s5 < param_1[4])" ( (binary_expression "unaff_s5 < param_1[4]" identifier < (subscript_expression "param_1[4]" identifier [ number_literal ])) )) (goto_statement "goto LAB_000d6c9c;" goto statement_identifier ;)) (if_statement "if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }" if (parenthesized_expression "(param_1[10] == (code ******)0x0)" ( (binary_expression "param_1[10] == (code ******)0x0" (subscript_expression "param_1[10]" identifier [ number_literal ]) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }" { (expression_statement "ppppcVar5 = *param_1[6][1];" (assignment_expression "ppppcVar5 = *param_1[6][1]" identifier = (pointer_expression "*param_1[6][1]" * (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" identifier [ number_literal ]) [ number_literal ]))) ;) (expression_statement "param_1[0xb] = (code ******)ppppcVar5[0x16];" (assignment_expression "param_1[0xb] = (code ******)ppppcVar5[0x16]" (subscript_expression "param_1[0xb]" identifier [ number_literal ]) = (cast_expression "(code ******)ppppcVar5[0x16]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppcVar5[0x16]" identifier [ number_literal ]))) ;) (expression_statement "ppppcVar5[0x16] = (code ***)param_1;" (assignment_expression "ppppcVar5[0x16] = (code ***)param_1" (subscript_expression "ppppcVar5[0x16]" identifier [ number_literal ]) = (cast_expression "(code ***)param_1" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier)) ;) (expression_statement "param_1[10] = (code ******)0x1;" (assignment_expression "param_1[10] = (code ******)0x1" (subscript_expression "param_1[10]" identifier [ number_literal ]) = (cast_expression "(code ******)0x1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) })) (if_statement "if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;" if (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" ( (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6c34;" goto statement_identifier ;)) (goto_statement "goto LAB_000d6e5c;" goto statement_identifier ;) })) (labeled_statement "LAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" statement_identifier : (if_statement "if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x65)" ( (binary_expression "pppppppcVar21 == (code *******)0x65" identifier == (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }" { (labeled_statement "LAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" statement_identifier : (if_statement "if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" if (parenthesized_expression "(unaff_s5 == (code *******)0x0)" ( (binary_expression "unaff_s5 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" { (expression_statement "unaff_s2 = (code *******)param_1[1];" (assignment_expression "unaff_s2 = (code *******)param_1[1]" identifier = (cast_expression "(code *******)param_1[1]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[1]" identifier [ number_literal ]))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" ( (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" * (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" ( (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" identifier + number_literal) )))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "unaff_s2[1][0xb] = (code *****)0x0;" (assignment_expression "unaff_s2[1][0xb] = (code *****)0x0" (subscript_expression "unaff_s2[1][0xb]" (subscript_expression "unaff_s2[1]" identifier [ number_literal ]) [ number_literal ]) = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1])" identifier = (cast_expression "(code *******)FUN_000cb270(unaff_s2[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cb270(unaff_s2[1])" identifier (argument_list "(unaff_s2[1])" ( (subscript_expression "unaff_s2[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x524c" identifier + number_literal) )))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          unaff_s5 = (code *******)0x1;\n        }" { (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" else (compound_statement "{\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" { (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x65)" ( (binary_expression "pppppppcVar21 != (code *******)0x65" identifier != (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) }))) }))) (expression_statement "param_3 = (code *******)((int)param_1[2] + 1);" (assignment_expression "param_3 = (code *******)((int)param_1[2] + 1)" identifier = (cast_expression "(code *******)((int)param_1[2] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1[2] + 1)" ( (binary_expression "(int)param_1[2] + 1" (cast_expression "(int)param_1[2]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "param_1[2]" identifier [ number_literal ])) + number_literal) )))) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1)" identifier = (cast_expression "(code *******)FUN_000cbf70(param_1[1],1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cbf70(param_1[1],1)" identifier (argument_list "(param_1[1],1)" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (if_statement "if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" if (parenthesized_expression "(*param_1 != (code ******)0x0)" ( (binary_expression "*param_1 != (code ******)0x0" (pointer_expression "*param_1" * identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" { (expression_statement "(*(code *)(PTR_LAB_0018fc04 + -0x824))();" (call_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))()" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))" ( (pointer_expression "*(code *)(PTR_LAB_0018fc04 + -0x824)" * (cast_expression "(code *)(PTR_LAB_0018fc04 + -0x824)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fc04 + -0x824)" ( (binary_expression "PTR_LAB_0018fc04 + -0x824" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) })) (if_statement "if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;" if (parenthesized_expression "((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0))" ( (binary_expression "(cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)" (parenthesized_expression "(cVar1 == '\x05')" ( (binary_expression "cVar1 == '\x05'" identifier == (char_literal "'\x05'" ' escape_sequence ')) )) && (parenthesized_expression "(pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)" ( (comma_expression "pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2)" identifier = (cast_expression "(code *******)FUN_000cc064(param_1[1],2)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000cc064(param_1[1],2)" identifier (argument_list "(param_1[1],2)" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) , number_literal ))))) , (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ))) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (expression_statement "pcVar3 = (code *)PTR_DAT_0018f948;" (assignment_expression "pcVar3 = (code *)PTR_DAT_0018f948" identifier = (cast_expression "(code *)PTR_DAT_0018f948" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" if (parenthesized_expression "((int)local_5c < (int)local_40)" ( (binary_expression "(int)local_5c < (int)local_40" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" { (if_statement "if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }" if (parenthesized_expression "((code *******)local_5c == (code *******)0x0)" ( (binary_expression "(code *******)local_5c == (code *******)0x0" (cast_expression "(code *******)local_5c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar23 = (int)local_40 / (int)local_5c;" (assignment_expression "iVar23 = (int)local_40 / (int)local_5c" identifier = (binary_expression "(int)local_40 / (int)local_5c" (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier) / (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (iVar23 == 0) {\n          trap(7);\n        }" if (parenthesized_expression "(iVar23 == 0)" ( (binary_expression "iVar23 == 0" identifier == number_literal) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);" (assignment_expression "pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" identifier = (cast_expression "(code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" ( (binary_expression "(int)((int)unaff_s5 + iVar23 + -1) / iVar23" (cast_expression "(int)((int)unaff_s5 + iVar23 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)unaff_s5 + iVar23 + -1)" ( (binary_expression "(int)unaff_s5 + iVar23 + -1" (binary_expression "(int)unaff_s5 + iVar23" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) ))) / identifier) )))) ;) (if_statement "if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }" if (parenthesized_expression "(param_1[1][1][8] == (code ****)0x0)" ( (binary_expression "param_1[1][1][8] == (code ****)0x0" (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]) == (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n          trap(7);\n        }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (if_statement "if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }" if (parenthesized_expression "((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24)" ( (binary_expression "(code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24" (cast_expression "(code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (binary_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1" (binary_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8]" (pointer_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80)" * (cast_expression "(uint *)(PTR_DAT_0018f948 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" ( (binary_expression "PTR_DAT_0018f948 + -0x1b80" identifier + number_literal) )))) / (cast_expression "(uint)param_1[1][1][8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) + number_literal) ))) == identifier) )) (compound_statement "{\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }" { (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + -1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + -1)" ( (binary_expression "(int)pppppppcVar24 + -1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "param_2 = (code *******)((int)local_5c >> 0x1f);" (assignment_expression "param_2 = (code *******)((int)local_5c >> 0x1f)" identifier = (cast_expression "(code *******)((int)local_5c >> 0x1f)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_5c >> 0x1f)" ( (binary_expression "(int)local_5c >> 0x1f" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (expression_statement "pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));" (assignment_expression "pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c))" identifier = (cast_expression "(code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(local_5c))" ( (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c)" (call_expression "ZEXT48(unaff_s5)" identifier (argument_list "(unaff_s5)" ( identifier ))) * (call_expression "ZEXT48(local_5c)" identifier (argument_list "(local_5c)" ( identifier )))) )))) ;) (expression_statement "pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));" (assignment_expression "pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" identifier = (cast_expression "(code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" ( (binary_expression "(int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" (binary_expression "(int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c" (binary_expression "(int)param_2 * (int)unaff_s5" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) * (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) + (binary_expression "((int)unaff_s5 >> 0x1f) * (int)local_5c" (parenthesized_expression "((int)unaff_s5 >> 0x1f)" ( (binary_expression "(int)unaff_s5 >> 0x1f" (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) * (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier))) + (cast_expression "(int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" ( (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20" (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c)" (call_expression "ZEXT48(unaff_s5)" identifier (argument_list "(unaff_s5)" ( identifier ))) * (call_expression "ZEXT48(local_5c)" identifier (argument_list "(local_5c)" ( identifier )))) >> number_literal) )))) )))) ;) (expression_statement "pppcVar12 = (code ***)local_4c[0xf];" (assignment_expression "pppcVar12 = (code ***)local_4c[0xf]" identifier = (cast_expression "(code ***)local_4c[0xf]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "local_4c[0xf]" identifier [ number_literal ]))) ;) (expression_statement "unaff_s5 = (code *******)local_4c[6];" (assignment_expression "unaff_s5 = (code *******)local_4c[6]" identifier = (cast_expression "(code *******)local_4c[6]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "local_4c[6]" identifier [ number_literal ]))) ;) (expression_statement "param_4 = pppppppcVar25;" (assignment_expression "param_4 = pppppppcVar25" identifier = identifier) ;) (expression_statement "unaff_s6 = (code *******)local_5c;" (assignment_expression "unaff_s6 = (code *******)local_5c" identifier = (cast_expression "(code *******)local_5c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }" if (parenthesized_expression "(pppppppcVar24 <= unaff_s5)" ( (binary_expression "pppppppcVar24 <= unaff_s5" identifier <= identifier) )) (compound_statement "{\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }" { (expression_statement "unaff_s3 = &local_38;" (assignment_expression "unaff_s3 = &local_38" identifier = (pointer_expression "&local_38" & identifier)) ;) (expression_statement "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *******)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);" (assignment_expression "pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30)" identifier = (cast_expression "(code *)(PTR_DAT_0018fbc8 + 0x6d30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018fbc8 + 0x6d30)" ( (binary_expression "PTR_DAT_0018fbc8 + 0x6d30" identifier + number_literal) )))) ;) (expression_statement "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (do_statement "do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);" do (compound_statement "{\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          }" { (if_statement "if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }" if (parenthesized_expression "(param_1[1][1][8] == (code ****)0x0)" ( (binary_expression "param_1[1][1][8] == (code ****)0x0" (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]) == (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              trap(7);\n            }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }" if (parenthesized_expression "((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24)" ( (binary_expression "(code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24" (cast_expression "(code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1)" ( (binary_expression "*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1" (binary_expression "*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8]" (pointer_expression "*(uint *)(pcVar3 + -0x1b80)" * (cast_expression "(uint *)(pcVar3 + -0x1b80)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + -0x1b80)" ( (binary_expression "pcVar3 + -0x1b80" identifier + number_literal) )))) / (cast_expression "(uint)param_1[1][1][8]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) + number_literal) ))) != identifier) )) (compound_statement "{\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }" { (expression_statement "param_3 = unaff_s3;" (assignment_expression "param_3 = unaff_s3" identifier = identifier) ;) (expression_statement "pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24)" identifier = (cast_expression "(code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)unaff_s8)(local_4c,pppppppcVar24)" (parenthesized_expression "(*(code *)unaff_s8)" ( (pointer_expression "*(code *)unaff_s8" * (cast_expression "(code *)unaff_s8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_4c,pppppppcVar24)" ( identifier , identifier ))))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }" { (expression_statement "pppppppcVar21 = (code *******)(*pcVar4)(local_38);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar4)(local_38)" identifier = (cast_expression "(code *******)(*pcVar4)(local_38)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar4)(local_38)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(local_38)" ( identifier ))))) ;) (expression_statement "(*pcVar7)(local_38);" (call_expression "(*pcVar7)(local_38)" (parenthesized_expression "(*pcVar7)" ( (pointer_expression "*pcVar7" * identifier) )) (argument_list "(local_38)" ( identifier ))) ;) })) (expression_statement "unaff_s2 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "unaff_s2 = (code *******)((int)pppppppcVar24 + 1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + 1)" ( (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) })) (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + 1)" ( (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(pppppppcVar24 <= unaff_s5)" ( (binary_expression "pppppppcVar24 <= unaff_s5" identifier <= identifier) )) ;) })) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0)" identifier = (cast_expression "(code *******)FUN_000d5e38(local_4c,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000d5e38(local_4c,0)" identifier (argument_list "(local_4c,0)" ( identifier , number_literal ))))) ;) (expression_statement "local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));" (assignment_expression "local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" identifier = (cast_expression "(code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (binary_expression "(int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80)" (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier) + (pointer_expression "*(int *)(PTR_DAT_0018f948 + -0x1b80)" * (cast_expression "(int *)(PTR_DAT_0018f948 + -0x1b80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" ( (binary_expression "PTR_DAT_0018f948 + -0x1b80" identifier + number_literal) ))))) )))) ;) (expression_statement "unaff_s5 = (code *******)((int)local_40 >> 0x1f);" (assignment_expression "unaff_s5 = (code *******)((int)local_40 >> 0x1f)" identifier = (cast_expression "(code *******)((int)local_40 >> 0x1f)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_40 >> 0x1f)" ( (binary_expression "(int)local_40 >> 0x1f" (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (if_statement "if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }" if (parenthesized_expression "(((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40))))" ( (binary_expression "((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))" (parenthesized_expression "((int)pppppppcVar6 < (int)unaff_s5)" ( (binary_expression "(int)pppppppcVar6 < (int)unaff_s5" (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))" ( (parenthesized_expression "(unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40))" ( (binary_expression "unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)" (binary_expression "unaff_s5 == pppppppcVar6" identifier == identifier) && (parenthesized_expression "(pppppppcVar25 < local_40)" ( (binary_expression "pppppppcVar25 < local_40" identifier < identifier) ))) )) ))) )) (compound_statement "{\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }" { (expression_statement "unaff_s5 = pppppppcVar6;" (assignment_expression "unaff_s5 = pppppppcVar6" identifier = identifier) ;) (expression_statement "local_40 = (code ******)pppppppcVar25;" (assignment_expression "local_40 = (code ******)pppppppcVar25" identifier = (cast_expression "(code ******)pppppppcVar25" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) })) (expression_statement "unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));" (assignment_expression "unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" identifier = (cast_expression "(code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" ( (binary_expression "(int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80)" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) + (pointer_expression "*(int *)(PTR_DAT_0018f948 + -0x1b80)" * (cast_expression "(int *)(PTR_DAT_0018f948 + -0x1b80)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" ( (binary_expression "PTR_DAT_0018f948 + -0x1b80" identifier + number_literal) ))))) )))) ;) (expression_statement "unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);" (assignment_expression "unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f)" identifier = (cast_expression "(code *******)((int)unaff_s3 >> 0x1f)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)unaff_s3 >> 0x1f)" ( (binary_expression "(int)unaff_s3 >> 0x1f" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" { (if_statement "if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }" if (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))" ( (binary_expression "((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" ( (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" ( (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < local_40))" ( (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < local_40)" (binary_expression "unaff_s5 == unaff_s2" identifier == identifier) && (parenthesized_expression "(unaff_s3 < local_40)" ( (binary_expression "unaff_s3 < local_40" identifier < identifier) ))) )) ))) )) (compound_statement "{\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }" { (expression_statement "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x491c" identifier + number_literal) )))) ;) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0)" identifier = (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x9e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x9e0)" ( (binary_expression "PTR_LAB_0018fb58 + 0x9e0" identifier + number_literal) )))) ;) (expression_statement "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec)" identifier = (cast_expression "(code *******)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) ;) (expression_statement "pppppppcVar24 = unaff_s3;" (assignment_expression "pppppppcVar24 = unaff_s3" identifier = identifier) ;) (do_statement "do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));" do (compound_statement "{\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            }" { (expression_statement "local_38 = (code ******)0x0;" (assignment_expression "local_38 = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "(*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);" (call_expression "(*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c)" (parenthesized_expression "(*(code *)PTR_FUN_0018fa10)" ( (pointer_expression "*(code *)PTR_FUN_0018fa10" * (cast_expression "(code *)PTR_FUN_0018fa10" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2,pppppppcVar24,param_2,local_5c)" ( identifier , identifier , identifier , identifier ))) ;) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "param_3 = &local_38;" (assignment_expression "param_3 = &local_38" identifier = (pointer_expression "&local_38" & identifier)) ;) (expression_statement "pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1)" identifier = (cast_expression "(code *******)(*pcVar3)(local_60,extraout_v1 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar3)(local_60,extraout_v1 + 1)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(local_60,extraout_v1 + 1)" ( identifier , (binary_expression "extraout_v1 + 1" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }" { (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x49ec)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" ( (binary_expression "PTR_LAB_0018fb58 + 0x49ec" identifier + number_literal) )))) )) (argument_list "(local_38)" ( identifier ))) ;) (expression_statement "unaff_s3 = pppppppcVar24;" (assignment_expression "unaff_s3 = pppppppcVar24" identifier = identifier) ;) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;) })) (expression_statement "param_3 = (code *******)local_5c;" (assignment_expression "param_3 = (code *******)local_5c" identifier = (cast_expression "(code *******)local_5c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "local_70 = (code ******)unaff_s2;" (assignment_expression "local_70 = (code ******)unaff_s2" identifier = (cast_expression "(code ******)unaff_s2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "local_6c = (code ******)pppppppcVar24;" (assignment_expression "local_6c = (code ******)pppppppcVar24" identifier = (cast_expression "(code ******)pppppppcVar24" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1])" identifier = (cast_expression "(code *******)(*pcVar4)(pppcVar12,local_38[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcVar4)(pppcVar12,local_38[1])" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pppcVar12,local_38[1])" ( identifier , (subscript_expression "local_38[1]" identifier [ number_literal ]) ))))) ;) (expression_statement "(*(code *)unaff_s8)(local_38);" (call_expression "(*(code *)unaff_s8)(local_38)" (parenthesized_expression "(*(code *)unaff_s8)" ( (pointer_expression "*(code *)unaff_s8" * (cast_expression "(code *)unaff_s8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_38)" ( identifier ))) ;) (expression_statement "unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);" (assignment_expression "unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + (int)local_5c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + (int)local_5c)" ( (binary_expression "(int)pppppppcVar24 + (int)local_5c" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));" (assignment_expression "unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" identifier = (cast_expression "(code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" ( (binary_expression "(code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24)" (cast_expression "(code *)((int)unaff_s2 + (int)param_2)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s2 + (int)param_2)" ( (binary_expression "(int)unaff_s2 + (int)param_2" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier)) ))) + (parenthesized_expression "(unaff_s3 < pppppppcVar24)" ( (binary_expression "unaff_s3 < pppppppcVar24" identifier < identifier) ))) )))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (expression_statement "pppppppcVar24 = unaff_s3;" (assignment_expression "pppppppcVar24 = unaff_s3" identifier = identifier) ;) }) while (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))" ( (binary_expression "((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" ( (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )) || (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" ( (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < local_40))" ( (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < local_40)" (binary_expression "unaff_s5 == unaff_s2" identifier == identifier) && (parenthesized_expression "(unaff_s3 < local_40)" ( (binary_expression "unaff_s3 < local_40" identifier < identifier) ))) )) ))) )) ;) })) (expression_statement "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" identifier = (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa6c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa6c)" ( (binary_expression "PTR_LAB_0018fb58 + 0xa6c" identifier + number_literal) )))) )) (argument_list "(pppcVar12,&local_38)" ( identifier , (pointer_expression "&local_38" & identifier) ))))) ;) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" identifier = identifier) ;) (if_statement "if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }" if (parenthesized_expression "((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             )" ( (binary_expression "(pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))" (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))" ( (parenthesized_expression "(((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0))" ( (binary_expression "((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)" (parenthesized_expression "((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25))))" ( (binary_expression "(int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))" (binary_expression "(int)local_38 <= (int)pppppppcVar6" (cast_expression "(int)local_38" ( (type_descriptor "int" primitive_type) ) identifier) <= (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier)) && (parenthesized_expression "(((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))" ( (parenthesized_expression "((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25))" ( (binary_expression "(code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)" (binary_expression "(code *******)local_38 != pppppppcVar6" (cast_expression "(code *******)local_38" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) != identifier) || (parenthesized_expression "(local_34 <= pppppppcVar25)" ( (binary_expression "local_34 <= pppppppcVar25" identifier <= identifier) ))) )) ))) )) || (parenthesized_expression "(pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)" ( (comma_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" identifier = (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa14)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa14)" ( (binary_expression "PTR_LAB_0018fb58 + 0xa14" identifier + number_literal) )))) )) (argument_list "(pppcVar12)" ( identifier ))))) , (comma_expression "param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "param_3 = pppppppcVar6" identifier = identifier) , (comma_expression "param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "param_4 = pppppppcVar25" identifier = identifier) , (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))))) ))) )) ))) )) (compound_statement "{\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }" { (expression_statement "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" identifier = (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x4a30)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x4a30)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x4a30)" ( (binary_expression "PTR_LAB_0018fb58 + 0x4a30" identifier + number_literal) )))) )) (argument_list "(local_4c,0)" ( identifier , number_literal ))))) ;) (goto_statement "goto LAB_000d6f68;" goto statement_identifier ;) })) })) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;) })) (if_statement "if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }" if (parenthesized_expression "((code *******)local_40 == (code *******)0x0)" ( (binary_expression "(code *******)local_40 == (code *******)0x0" (cast_expression "(code *******)local_40" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);" (assignment_expression "unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5)" identifier = (cast_expression "(code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(((int)local_5c / (int)local_40) * (int)unaff_s5)" ( (binary_expression "((int)local_5c / (int)local_40) * (int)unaff_s5" (parenthesized_expression "((int)local_5c / (int)local_40)" ( (binary_expression "(int)local_5c / (int)local_40" (cast_expression "(int)local_5c" ( (type_descriptor "int" primitive_type) ) identifier) / (cast_expression "(int)local_40" ( (type_descriptor "int" primitive_type) ) identifier)) )) * (cast_expression "(int)unaff_s5" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "local_4c[6] = (code **)unaff_s5;" (assignment_expression "local_4c[6] = (code **)unaff_s5" (subscript_expression "local_4c[6]" identifier [ number_literal ]) = (cast_expression "(code **)unaff_s5" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "param_3 = (code *******)0x0;" (assignment_expression "param_3 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0)" identifier = (cast_expression "(code *******)FUN_000d5e38(local_4c,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000d5e38(local_4c,0)" identifier (argument_list "(local_4c,0)" ( identifier , number_literal ))))) ;) (labeled_statement "LAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" statement_identifier : (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;))) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1])" identifier = (cast_expression "(code *******)FUN_000ca0b8(param_1[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000ca0b8(param_1[1])" identifier (argument_list "(param_1[1])" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d6e48;" goto statement_identifier ;)) (if_statement "if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }" if (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" ( (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }" { (expression_statement "pppppppcVar21 = (code *******)0x65;" (assignment_expression "pppppppcVar21 = (code *******)0x65" identifier = (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d6c34;" goto statement_identifier ;) })) (expression_statement "pppppppcVar21 = (code *******)0x65;" (assignment_expression "pppppppcVar21 = (code *******)0x65" identifier = (cast_expression "(code *******)0x65" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" else (compound_statement "{\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" { (labeled_statement "LAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;" statement_identifier : (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (if_statement "if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }" if (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" ( (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }" { (labeled_statement "LAB_000d6c34:\n        FUN_000d6488(param_1[6],0);" statement_identifier : (expression_statement "FUN_000d6488(param_1[6],0);" (call_expression "FUN_000d6488(param_1[6],0)" identifier (argument_list "(param_1[6],0)" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) , number_literal ))) ;)) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "FUN_000ca0b8(param_1[6]);" (call_expression "FUN_000ca0b8(param_1[6])" identifier (argument_list "(param_1[6])" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) })) (if_statement "if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0xc0a)" ( (binary_expression "pppppppcVar21 == (code *******)0xc0a" identifier == (cast_expression "(code *******)0xc0a" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }" { (expression_statement "pppppppcVar21 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) })) })))) (labeled_statement "LAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;" statement_identifier : (expression_statement "param_1[7] = (code ******)pppppppcVar21;" (assignment_expression "param_1[7] = (code ******)pppppppcVar21" (subscript_expression "param_1[7]" identifier [ number_literal ]) = (cast_expression "(code ******)pppppppcVar21" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;)) }) (else_clause "else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" else (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" { (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" * (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((*param_1)[3])" ( (subscript_expression "(*param_1)[3]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]) ))) ;) (expression_statement "pppppppcVar21 = (code *******)param_1[7];" (assignment_expression "pppppppcVar21 = (code *******)param_1[7]" identifier = (cast_expression "(code *******)param_1[7]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_1[7]" identifier [ number_literal ]))) ;) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }" if (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" ( (binary_expression "pppppppcVar21 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }" { (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (labeled_statement "LAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];" statement_identifier : (expression_statement "local_60 = (code ***)*ppppppcVar15[1];" (assignment_expression "local_60 = (code ***)*ppppppcVar15[1]" identifier = (cast_expression "(code ***)*ppppppcVar15[1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*ppppppcVar15[1]" * (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])))) ;)) (expression_statement "local_4c = (code ***)*param_1[1][1];" (assignment_expression "local_4c = (code ***)*param_1[1][1]" identifier = (cast_expression "(code ***)*param_1[1][1]" ( (type_descriptor "code ***" type_identifier (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ])))) ;) (if_statement "if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;" if (parenthesized_expression "((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))" ( (binary_expression "(*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02')" (parenthesized_expression "(*param_1 == (code ******)0x0)" ( (binary_expression "*param_1 == (code ******)0x0" (pointer_expression "*param_1" * identifier) == (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) || (parenthesized_expression "(*(char *)(ppppppcVar15[1] + 5) != '\x02')" ( (binary_expression "*(char *)(ppppppcVar15[1] + 5) != '\x02'" (pointer_expression "*(char *)(ppppppcVar15[1] + 5)" * (cast_expression "(char *)(ppppppcVar15[1] + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(ppppppcVar15[1] + 5)" ( (binary_expression "ppppppcVar15[1] + 5" (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ]) + number_literal) )))) != (char_literal "'\x02'" ' escape_sequence ')) ))) )) (goto_statement "goto LAB_000d69a8;" goto statement_identifier ;)) (if_statement "if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" if (parenthesized_expression "(param_1[3] != (code ******)0x0)" ( (binary_expression "param_1[3] != (code ******)0x0" (subscript_expression "param_1[3]" identifier [ number_literal ]) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" { (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) (goto_statement "goto LAB_000d72d0;" goto statement_identifier ;) })) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (labeled_statement "LAB_000d6a44:\n      ppppppcVar15 = param_1[6];" statement_identifier : (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;)) (labeled_statement "LAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];" statement_identifier : (expression_statement "pppppcVar2 = ppppppcVar15[1];" (assignment_expression "pppppcVar2 = ppppppcVar15[1]" identifier = (subscript_expression "ppppppcVar15[1]" identifier [ number_literal ])) ;)) (expression_statement "local_5c = (code ******)pppppcVar2[8];" (assignment_expression "local_5c = (code ******)pppppcVar2[8]" identifier = (cast_expression "(code ******)pppppcVar2[8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "pppppcVar2[8]" identifier [ number_literal ]))) ;) (expression_statement "local_40 = (code ******)param_1[1][1][8];" (assignment_expression "local_40 = (code ******)param_1[1][1][8]" identifier = (cast_expression "(code ******)param_1[1][1][8]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]) [ number_literal ]))) ;) (expression_statement "cVar1 = *(char *)((int)*param_1[1][1] + 5);" (assignment_expression "cVar1 = *(char *)((int)*param_1[1][1] + 5)" identifier = (pointer_expression "*(char *)((int)*param_1[1][1] + 5)" * (cast_expression "(char *)((int)*param_1[1][1] + 5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)*param_1[1][1] + 5)" ( (binary_expression "(int)*param_1[1][1] + 5" (cast_expression "(int)*param_1[1][1]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*param_1[1][1]" * (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" identifier [ number_literal ]) [ number_literal ]))) + number_literal) ))))) ;) (goto_statement "goto LAB_000d6a70;" goto statement_identifier ;) })) (labeled_statement "LAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" statement_identifier : (if_statement "if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" if (parenthesized_expression "((code *)((int)pppppppcVar21 + -5) < (code *)0x2)" ( (binary_expression "(code *)((int)pppppppcVar21 + -5) < (code *)0x2" (cast_expression "(code *)((int)pppppppcVar21 + -5)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppcVar21 + -5)" ( (binary_expression "(int)pppppppcVar21 + -5" (cast_expression "(int)pppppppcVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) < (cast_expression "(code *)0x2" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" { (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_000d6970;" goto statement_identifier ;) }))) }))) (if_statement "if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }" if (parenthesized_expression "(*param_1 != (code ******)0x0)" ( (binary_expression "*param_1 != (code ******)0x0" (pointer_expression "*param_1" * identifier) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }" { (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" * (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "((*param_1)[3])" ( (subscript_expression "(*param_1)[3]" (parenthesized_expression "(*param_1)" ( (pointer_expression "*param_1" * identifier) )) [ number_literal ]) ))) ;) })) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" ( (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" * (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" ( (binary_expression "PTR_LAB_0018fb58 + 0x524c" identifier + number_literal) )))) )) (argument_list "(param_1[6])" ( (subscript_expression "param_1[6]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" ( (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" * (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1[5][3])" ( (subscript_expression "param_1[5][3]" (subscript_expression "param_1[5]" identifier [ number_literal ]) [ number_literal ]) ))) ;) (if_statement "if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }" if (parenthesized_expression "(local_2c == *(uint *)PTR___stack_chk_guard_0018fecc)" ( (binary_expression "local_2c == *(uint *)PTR___stack_chk_guard_0018fecc" identifier == (pointer_expression "*(uint *)PTR___stack_chk_guard_0018fecc" * (cast_expression "(uint *)PTR___stack_chk_guard_0018fecc" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return pppppppcVar21;\n  }" { (return_statement "return pppppppcVar21;" return identifier ;) })) (expression_statement "pcVar3 = FUN_000d7350;" (assignment_expression "pcVar3 = FUN_000d7350" identifier = identifier) ;) (expression_statement "uVar20 = local_2c;" (assignment_expression "uVar20 = local_2c" identifier = identifier) ;) (expression_statement "puVar22 = PTR___stack_chk_fail_0018fea0;" (assignment_expression "puVar22 = PTR___stack_chk_fail_0018fea0" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_0018fea0)();" (call_expression "(*(code *)PTR___stack_chk_fail_0018fea0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0018fea0)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0018fea0" * (cast_expression "(code *)PTR___stack_chk_fail_0018fea0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_198 = puVar22 + 0xc05d0;" (assignment_expression "puStack_198 = puVar22 + 0xc05d0" identifier = (binary_expression "puVar22 + 0xc05d0" identifier + number_literal)) ;) (expression_statement "ppppppcStack_188 = local_70;" (assignment_expression "ppppppcStack_188 = local_70" identifier = identifier) ;) (expression_statement "uStack_174 = uStack_64;" (assignment_expression "uStack_174 = uStack_64" identifier = identifier) ;) (expression_statement "pppcStack_17c = local_60;" (assignment_expression "pppcStack_17c = local_60" identifier = identifier) ;) (expression_statement "ppppppcStack_178 = local_5c;" (assignment_expression "ppppppcStack_178 = local_5c" identifier = identifier) ;) (expression_statement "apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);" (assignment_expression "apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c)" (subscript_expression "apppppcStack_114[0x1a]" identifier [ number_literal ]) = (cast_expression "(code *****)**(undefined4 **)(puVar22 + 0xb8b7c)" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "**(undefined4 **)(puVar22 + 0xb8b7c)" * (pointer_expression "*(undefined4 **)(puVar22 + 0xb8b7c)" * (cast_expression "(undefined4 **)(puVar22 + 0xb8b7c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + 0xb8b7c)" ( (binary_expression "puVar22 + 0xb8b7c" identifier + number_literal) ))))))) ;) (expression_statement "iStack_130 = 0;" (assignment_expression "iStack_130 = 0" identifier = number_literal) ;) (expression_statement "ppppppcStack_18c = (code ******)param_4;" (assignment_expression "ppppppcStack_18c = (code ******)param_4" identifier = (cast_expression "(code ******)param_4" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_180 = (code ******)pppppppcVar24;" (assignment_expression "ppppppcStack_180 = (code ******)pppppppcVar24" identifier = (cast_expression "(code ******)pppppppcVar24" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_a8 = (code ******)param_1;" (assignment_expression "ppppppcStack_a8 = (code ******)param_1" identifier = (cast_expression "(code ******)param_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_a4 = (code ******)pppppppcVar21;" (assignment_expression "ppppppcStack_a4 = (code ******)pppppppcVar21" identifier = (cast_expression "(code ******)pppppppcVar21" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_a0 = (code ******)unaff_s2;" (assignment_expression "ppppppcStack_a0 = (code ******)unaff_s2" identifier = (cast_expression "(code ******)unaff_s2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_9c = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_9c = (code ******)unaff_s3" identifier = (cast_expression "(code ******)unaff_s3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_98 = (code ******)param_2;" (assignment_expression "ppppppcStack_98 = (code ******)param_2" identifier = (cast_expression "(code ******)param_2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_94 = (code ******)unaff_s5;" (assignment_expression "ppppppcStack_94 = (code ******)unaff_s5" identifier = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_90 = (code ******)unaff_s6;" (assignment_expression "ppppppcStack_90 = (code ******)unaff_s6" identifier = (cast_expression "(code ******)unaff_s6" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pcStack_8c = unaff_s7;" (assignment_expression "pcStack_8c = unaff_s7" identifier = identifier) ;) (expression_statement "ppppppcStack_88 = (code ******)unaff_s8;" (assignment_expression "ppppppcStack_88 = (code ******)unaff_s8" identifier = (cast_expression "(code ******)unaff_s8" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" identifier = identifier) ;) (expression_statement "ppppppcStack_78 = (code ******)param_3;" (assignment_expression "ppppppcStack_78 = (code ******)param_3" identifier = (cast_expression "(code ******)param_3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" if (parenthesized_expression "(*(char *)(uVar20 + 0x2e) == '\0')" ( (binary_expression "*(char *)(uVar20 + 0x2e) == '\0'" (pointer_expression "*(char *)(uVar20 + 0x2e)" * (cast_expression "(char *)(uVar20 + 0x2e)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2e)" ( (binary_expression "uVar20 + 0x2e" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }" { (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();" (assignment_expression "pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" identifier = (cast_expression "(code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))" ( (pointer_expression "*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" * (cast_expression "(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" ( (binary_expression "*(int *)(puVar22 + 0xb8808) + 0x4cd8" (pointer_expression "*(int *)(puVar22 + 0xb8808)" * (cast_expression "(int *)(puVar22 + 0xb8808)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + 0xb8808)" ( (binary_expression "puVar22 + 0xb8808" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))))) ;) (expression_statement "pppppppcVar6 = pppppppcVar25;" (assignment_expression "pppppppcVar6 = pppppppcVar25" identifier = identifier) ;) (if_statement "if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }" if (parenthesized_expression "(pppppppcVar25 == (code *******)0x0)" ( (binary_expression "pppppppcVar25 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }" { (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 1;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 1" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" * (cast_expression "(undefined1 *)(uVar20 + 0x2d)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2d)" ( (binary_expression "uVar20 + 0x2d" identifier + number_literal) )))) = number_literal) ;) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" if (parenthesized_expression "((code *******)ppppppcStack_78 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_78 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_78" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }" { (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" identifier = identifier) ;) (labeled_statement "LAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);" statement_identifier : (expression_statement "param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);" (assignment_expression "param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" identifier = (cast_expression "(code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" ( (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x1cfc" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" * (cast_expression "(int *)(puStack_198 + -0x7c94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7c94)" ( (binary_expression "puStack_198 + -0x7c94" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,&iStack_130)" ( identifier , (pointer_expression "&iStack_130" & identifier) ))))) ;)) (expression_statement "pppppppcVar6 = param_1;" (assignment_expression "pppppppcVar6 = param_1" identifier = identifier) ;) (if_statement "if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (compound_statement "{\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" { (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" if (parenthesized_expression "(*(int *)**(undefined4 **)(uVar20 + 4) < 3)" ( (binary_expression "*(int *)**(undefined4 **)(uVar20 + 4) < 3" (pointer_expression "*(int *)**(undefined4 **)(uVar20 + 4)" * (cast_expression "(int *)**(undefined4 **)(uVar20 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(uVar20 + 4)" * (pointer_expression "*(undefined4 **)(uVar20 + 4)" * (cast_expression "(undefined4 **)(uVar20 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) ))))))) < number_literal) )) (compound_statement "{\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }" { (if_statement "if (param_1 == (code *******)0x0) goto LAB_000d74f0;" if (parenthesized_expression "(param_1 == (code *******)0x0)" ( (binary_expression "param_1 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d74f0;" goto statement_identifier ;)) (labeled_statement "LAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);" statement_identifier : (expression_statement "(**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(uVar20 + 0x34,0,0x30)" ( (binary_expression "uVar20 + 0x34" identifier + number_literal) , number_literal , number_literal ))) ;)) }) (else_clause "else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" else (compound_statement "{\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" { (expression_statement "uStack_1a0 = uStack_1a0 & 0xffffffff;" (assignment_expression "uStack_1a0 = uStack_1a0 & 0xffffffff" identifier = (binary_expression "uStack_1a0 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))()" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xb40" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (if_statement "if (param_1 != (code *******)0x0) goto LAB_000d8034;" if (parenthesized_expression "(param_1 != (code *******)0x0)" ( (binary_expression "param_1 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d8034;" goto statement_identifier ;)) (labeled_statement "LAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);" statement_identifier : (expression_statement "ppppppcStack_168 = *(code *******)(uVar20 + 0x44);" (assignment_expression "ppppppcStack_168 = *(code *******)(uVar20 + 0x44)" identifier = (pointer_expression "*(code *******)(uVar20 + 0x44)" * (cast_expression "(code *******)(uVar20 + 0x44)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) ))))) ;)) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" if (parenthesized_expression "((code *******)ppppppcStack_168 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_168 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_168" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }" { (if_statement "if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }" if (parenthesized_expression "((code *******)ppppppcStack_170 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_170 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppcVar6 = (code *******)0x0;" (assignment_expression "pppppppcVar6 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;" statement_identifier : (expression_statement "param_1 = (code *******)ppppppcStack_170;" (assignment_expression "param_1 = (code *******)ppppppcStack_170" identifier = (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;)) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "pppppppcVar6 = pppppppcVar25;" (assignment_expression "pppppppcVar6 = pppppppcVar25" identifier = identifier) ;) (if_statement "if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }" if (parenthesized_expression "(1 < (int)ppppppcStack_170)" ( (binary_expression "1 < (int)ppppppcStack_170" number_literal < (cast_expression "(int)ppppppcStack_170" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }" { (expression_statement "sqlite3_randomness(4,&pppppcStack_120);" (call_expression "sqlite3_randomness(4,&pppppcStack_120)" identifier (argument_list "(4,&pppppcStack_120)" ( number_literal , (pointer_expression "&pppppcStack_120" & identifier) ))) ;) (expression_statement "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(4,uStack_1a0._4_4_)" identifier (argument_list "(4,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "param_4 = (code *******)&DAT_00000004;" (assignment_expression "param_4 = (code *******)&DAT_00000004" identifier = (cast_expression "(code *******)&DAT_00000004" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000004" & identifier))) ;) (expression_statement "pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }" if (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" ( (binary_expression "pppppppcVar6 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }" { (if_statement "if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }" if (parenthesized_expression "(param_1 == (code *******)0x3)" ( (binary_expression "param_1 == (code *******)0x3" identifier == (cast_expression "(code *******)0x3" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }" { (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7110)" ( (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7110" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" * (cast_expression "(int *)(puStack_198 + -0x7d50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d50)" ( (binary_expression "puStack_198 + -0x7d50" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,pppppcStack_120)" ( identifier , identifier ))) ;) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));" (assignment_expression "pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" identifier = (cast_expression "(code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 8))" ( (pointer_expression "*(undefined4 *)(uVar20 + 8)" * (cast_expression "(undefined4 *)(uVar20 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 8)" ( (binary_expression "uVar20 + 8" identifier + number_literal) )))) ))))) ;) })) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,4,4)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) })) })) (labeled_statement "LAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);" statement_identifier : (expression_statement "(**(code **)(puVar22 + -0x7fa8))(puStack_164);" (call_expression "(**(code **)(puVar22 + -0x7fa8))(puStack_164)" (parenthesized_expression "(**(code **)(puVar22 + -0x7fa8))" ( (pointer_expression "**(code **)(puVar22 + -0x7fa8)" * (pointer_expression "*(code **)(puVar22 + -0x7fa8)" * (cast_expression "(code **)(puVar22 + -0x7fa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7fa8)" ( (binary_expression "puVar22 + -0x7fa8" identifier + number_literal) ))))) )) (argument_list "(puStack_164)" ( identifier ))) ;)) (expression_statement "unaff_s5 = pppppppcVar24;" (assignment_expression "unaff_s5 = pppppppcVar24" identifier = identifier) ;) }) (else_clause "else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" else (compound_statement "{\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" { (expression_statement "ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);" (assignment_expression "ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" identifier = (cast_expression "(code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" ( (binary_expression "(*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00" (binary_expression "(*(ushort *)(uVar20 + 0x42) & 1) << 0x10" (parenthesized_expression "(*(ushort *)(uVar20 + 0x42) & 1)" ( (binary_expression "*(ushort *)(uVar20 + 0x42) & 1" (pointer_expression "*(ushort *)(uVar20 + 0x42)" * (cast_expression "(ushort *)(uVar20 + 0x42)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x42)" ( (binary_expression "uVar20 + 0x42" identifier + number_literal) )))) & number_literal) )) << number_literal) | (binary_expression "*(ushort *)(uVar20 + 0x42) & 0xfe00" (pointer_expression "*(ushort *)(uVar20 + 0x42)" * (cast_expression "(ushort *)(uVar20 + 0x42)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x42)" ( (binary_expression "uVar20 + 0x42" identifier + number_literal) )))) & number_literal)) )))) ;) (if_statement "if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" if (parenthesized_expression "(ppppppcStack_15c == (code ******)&_gp_1)" ( (binary_expression "ppppppcStack_15c == (code ******)&_gp_1" identifier == (cast_expression "(code ******)&_gp_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (pointer_expression "&_gp_1" & identifier))) )) (compound_statement "{\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" { (expression_statement "iVar23 = **(int **)(uVar20 + 0x20);" (assignment_expression "iVar23 = **(int **)(uVar20 + 0x20)" identifier = (pointer_expression "**(int **)(uVar20 + 0x20)" * (pointer_expression "*(int **)(uVar20 + 0x20)" * (cast_expression "(int **)(uVar20 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 0x20)" ( (binary_expression "uVar20 + 0x20" identifier + number_literal) )))))) ;) (expression_statement "param_1 = (code *******)0x1;" (assignment_expression "param_1 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "iStack_154 = iVar23;" (assignment_expression "iStack_154 = iVar23" identifier = identifier) ;) (if_statement "if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" if (parenthesized_expression "(*(code ********)(iVar23 + 0x60) < ppppppcStack_168)" ( (binary_expression "*(code ********)(iVar23 + 0x60) < ppppppcStack_168" (pointer_expression "*(code ********)(iVar23 + 0x60)" * (cast_expression "(code ********)(iVar23 + 0x60)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iVar23 + 0x60)" ( (binary_expression "iVar23 + 0x60" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }" { (expression_statement "ppppppcStack_140 = *(code *******)(uVar20 + 0x48);" (assignment_expression "ppppppcStack_140 = *(code *******)(uVar20 + 0x48)" identifier = (pointer_expression "*(code *******)(uVar20 + 0x48)" * (cast_expression "(code *******)(uVar20 + 0x48)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar20 + 0x48)" ( (binary_expression "uVar20 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);" (assignment_expression "ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" identifier = (cast_expression "(code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "unaff_s3 = (code *******)ppppppcStack_168;" (assignment_expression "unaff_s3 = (code *******)ppppppcStack_168" identifier = (cast_expression "(code *******)ppppppcStack_168" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "param_2 = pppppppcVar25;" (assignment_expression "param_2 = pppppppcVar25" identifier = identifier) ;) (expression_statement "ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);" (assignment_expression "ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" identifier = (cast_expression "(code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (do_statement "do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);" do (compound_statement "{\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  }" { (expression_statement "pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);" (assignment_expression "pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4)" identifier = (cast_expression "(code *******)(iVar23 + (int)param_1 * 4)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iVar23 + (int)param_1 * 4)" ( (binary_expression "iVar23 + (int)param_1 * 4" identifier + (binary_expression "(int)param_1 * 4" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) )))) ;) (expression_statement "unaff_s2 = (code *******)pppppppcVar21[0x19];" (assignment_expression "unaff_s2 = (code *******)pppppppcVar21[0x19]" identifier = (cast_expression "(code *******)pppppppcVar21[0x19]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppppcVar21[0x19]" identifier [ number_literal ]))) ;) (expression_statement "pppppppcVar6 = (code *******)((int)param_1 + 3);" (assignment_expression "pppppppcVar6 = (code *******)((int)param_1 + 3)" identifier = (cast_expression "(code *******)((int)param_1 + 3)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + 3)" ( (binary_expression "(int)param_1 + 3" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (if_statement "if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }" if (parenthesized_expression "(unaff_s2 < unaff_s3)" ( (binary_expression "unaff_s2 < unaff_s3" identifier < identifier) )) (compound_statement "{\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }" { (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "ppppppcStack_16c = (code ******)pppppppcVar6;" (assignment_expression "ppppppcStack_16c = (code ******)pppppppcVar6" identifier = (cast_expression "(code ******)pppppppcVar6" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)ppppppcStack_184)" ( (pointer_expression "*(code *)ppppppcStack_184" * (cast_expression "(code *)ppppppcStack_184" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" if (parenthesized_expression "(param_2 == (code *******)0x0)" ( (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }" { (expression_statement "pppppppcVar16 = (code *******)0xffffffff;" (assignment_expression "pppppppcVar16 = (code *******)0xffffffff" identifier = (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (if_statement "if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }" if (parenthesized_expression "(param_1 == (code *******)0x1)" ( (binary_expression "param_1 == (code *******)0x1" identifier == (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                          pppppppcVar16 = unaff_s3;\n                        }" { (expression_statement "pppppppcVar16 = unaff_s3;" (assignment_expression "pppppppcVar16 = unaff_s3" identifier = identifier) ;) })) (expression_statement "pppppppcVar21[0x19] = (code ******)pppppppcVar16;" (assignment_expression "pppppppcVar21[0x19] = (code ******)pppppppcVar16" (subscript_expression "pppppppcVar21[0x19]" identifier [ number_literal ]) = (cast_expression "(code ******)pppppppcVar16" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "(*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);" (call_expression "(*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1)" (parenthesized_expression "(*(code *)ppppppcStack_168)" ( (pointer_expression "*(code *)ppppppcStack_168" * (cast_expression "(code *)ppppppcStack_168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar20,ppppppcStack_16c,1)" ( identifier , identifier , number_literal ))) ;) (expression_statement "param_4 = pppppppcVar6;" (assignment_expression "param_4 = pppppppcVar6" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }) (else_clause "else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" else (compound_statement "{\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" { (expression_statement "param_4 = pppppppcVar6;" (assignment_expression "param_4 = pppppppcVar6" identifier = identifier) ;) (expression_statement "unaff_s3 = unaff_s2;" (assignment_expression "unaff_s3 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }" if (parenthesized_expression "(param_2 != (code *******)&DAT_00000005)" ( (binary_expression "param_2 != (code *******)&DAT_00000005" identifier != (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) (compound_statement "{\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pppppppcVar6 = param_2;" (assignment_expression "pppppppcVar6 = param_2" identifier = identifier) ;) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "ppppppcStack_18c = (code ******)0x0;" (assignment_expression "ppppppcStack_18c = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) }))) })) (expression_statement "param_1 = (code *******)((int)param_1 + 1);" (assignment_expression "param_1 = (code *******)((int)param_1 + 1)" identifier = (cast_expression "(code *******)((int)param_1 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + 1)" ( (binary_expression "(int)param_1 + 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(param_1 != (code *******)&DAT_00000005)" ( (binary_expression "param_1 != (code *******)&DAT_00000005" identifier != (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) ;) (expression_statement "ppppppcStack_168 = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_168 = (code ******)unaff_s3" identifier = (cast_expression "(code ******)unaff_s3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" if (parenthesized_expression "(*(code ********)(iStack_154 + 0x60) < unaff_s3)" ( (binary_expression "*(code ********)(iStack_154 + 0x60) < unaff_s3" (pointer_expression "*(code ********)(iStack_154 + 0x60)" * (cast_expression "(code ********)(iStack_154 + 0x60)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) )))) < identifier) )) (compound_statement "{\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }" { (expression_statement "param_1 = *(code ********)(iStack_154 + 0x60);" (assignment_expression "param_1 = *(code ********)(iStack_154 + 0x60)" identifier = (pointer_expression "*(code ********)(iStack_154 + 0x60)" * (cast_expression "(code ********)(iStack_154 + 0x60)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "pppppppcVar6 = *(code ********)(uVar20 + 0x44);" (assignment_expression "pppppppcVar6 = *(code ********)(uVar20 + 0x44)" identifier = (pointer_expression "*(code ********)(uVar20 + 0x44)" * (cast_expression "(code ********)(uVar20 + 0x44)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) ))))) ;) (expression_statement "ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);" (assignment_expression "ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" identifier = (cast_expression "(code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" ( (binary_expression "(uint)((int)pppppppcVar6 + 0x21) >> 0xc" (call_expression "(uint)((int)pppppppcVar6 + 0x21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)pppppppcVar6 + 0x21)" ( (binary_expression "(int)pppppppcVar6 + 0x21" (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) >> number_literal) )))) ;) (expression_statement "pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);" (assignment_expression "pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1)" identifier = (cast_expression "(code *******)((int)ppppppcStack_158 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppcStack_158 + 1)" ( (binary_expression "(int)ppppppcStack_158 + 1" (cast_expression "(int)ppppppcStack_158" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);" (assignment_expression "unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" identifier = (cast_expression "(code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" ( (binary_expression "(int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2" (cast_expression "(int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe)" ( (binary_expression "(int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe" (binary_expression "(int)pppppppcVar6 + (int)ppppppcStack_158 * 10" (cast_expression "(int)pppppppcVar6" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "(int)ppppppcStack_158 * 10" (cast_expression "(int)ppppppcStack_158" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal)) + number_literal) ))) * number_literal) )))) ;) (expression_statement "ppppppcStack_134 = (code ******)pppppppcVar6;" (assignment_expression "ppppppcStack_134 = (code ******)pppppppcVar6" identifier = (cast_expression "(code ******)pppppppcVar6" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);" (assignment_expression "puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" identifier = (cast_expression "(undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" (parenthesized_expression "(**(code **)(puVar22 + -0x7f50))" ( (pointer_expression "**(code **)(puVar22 + -0x7f50)" * (pointer_expression "*(code **)(puVar22 + -0x7f50)" * (cast_expression "(code **)(puVar22 + -0x7f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7f50)" ( (binary_expression "puVar22 + -0x7f50" identifier + number_literal) ))))) )) (argument_list "((int)unaff_s2 >> 0x1f,unaff_s2)" ( (binary_expression "(int)unaff_s2 >> 0x1f" (cast_expression "(int)unaff_s2" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) , identifier ))))) ;) (expression_statement "unaff_s3 = pppppppcVar6;" (assignment_expression "unaff_s3 = pppppppcVar6" identifier = identifier) ;) (expression_statement "puStack_164 = puVar8;" (assignment_expression "puStack_164 = puVar8" identifier = identifier) ;) (if_statement "if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }" if (parenthesized_expression "(puVar8 != (undefined4 *)0x0)" ( (binary_expression "puVar8 != (undefined4 *)0x0" identifier != (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }" { (expression_statement "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(puVar8,0,unaff_s2)" ( identifier , number_literal , identifier ))) ;) (expression_statement "puVar8[1] = pppppppcVar21;" (assignment_expression "puVar8[1] = pppppppcVar21" (subscript_expression "puVar8[1]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }" if (parenthesized_expression "((code *******)0x1000 < pppppppcVar6)" ( (binary_expression "(code *******)0x1000 < pppppppcVar6" (cast_expression "(code *******)0x1000" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) < identifier) )) (compound_statement "{\n                        unaff_s3 = (code *******)0x1000;\n                      }" { (expression_statement "unaff_s3 = (code *******)0x1000;" (assignment_expression "unaff_s3 = (code *******)0x1000" identifier = (cast_expression "(code *******)0x1000" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) })) (expression_statement "unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);" (assignment_expression "unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" identifier = (cast_expression "(code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7f50))" ( (pointer_expression "**(code **)(puStack_198 + -0x7f50)" * (pointer_expression "*(code **)(puStack_198 + -0x7f50)" * (cast_expression "(code **)(puStack_198 + -0x7f50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7f50)" ( (binary_expression "puStack_198 + -0x7f50" identifier + number_literal) ))))) )) (argument_list "(0,(int)unaff_s3 << 1)" ( number_literal , (binary_expression "(int)unaff_s3 << 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))))) ;) (if_statement "if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }" if (parenthesized_expression "(unaff_s2 == (code *******)0x0)" ( (binary_expression "unaff_s2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }" { (expression_statement "param_2 = (code *******)&DAT_00000007;" (assignment_expression "param_2 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (labeled_statement "LAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);" statement_identifier : (expression_statement "param_1 = *(code ********)(puStack_198 + -0x7fa8);" (assignment_expression "param_1 = *(code ********)(puStack_198 + -0x7fa8)" identifier = (pointer_expression "*(code ********)(puStack_198 + -0x7fa8)" * (cast_expression "(code ********)(puStack_198 + -0x7fa8)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(puStack_198 + -0x7fa8)" ( (binary_expression "puStack_198 + -0x7fa8" identifier + number_literal) ))))) ;)) (expression_statement "(*(code *)param_1)(unaff_s2);" (call_expression "(*(code *)param_1)(unaff_s2)" (parenthesized_expression "(*(code *)param_1)" ( (pointer_expression "*(code *)param_1" * (cast_expression "(code *)param_1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "(*(code *)param_1)(puStack_164);" (call_expression "(*(code *)param_1)(puStack_164)" (parenthesized_expression "(*(code *)param_1)" ( (pointer_expression "*(code *)param_1" * (cast_expression "(code *)param_1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puStack_164)" ( identifier ))) ;) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (goto_statement "goto LAB_000d7644;" goto statement_identifier ;) })) (expression_statement "param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);" (assignment_expression "param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc)" identifier = (cast_expression "(code *******)((uint)((int)param_1 + 0x22) >> 0xc)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((uint)((int)param_1 + 0x22) >> 0xc)" ( (binary_expression "(uint)((int)param_1 + 0x22) >> 0xc" (call_expression "(uint)((int)param_1 + 0x22)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)param_1 + 0x22)" ( (binary_expression "(int)param_1 + 0x22" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) >> number_literal) )))) ;) (expression_statement "pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);" (assignment_expression "pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21)" identifier = (cast_expression "(code *******)(uint)(param_1 < pppppppcVar21)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(uint)(param_1 < pppppppcVar21)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(param_1 < pppppppcVar21)" ( (binary_expression "param_1 < pppppppcVar21" identifier < identifier) ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (expression_statement "ppppppcStack_16c = (code ******)param_1;" (assignment_expression "ppppppcStack_16c = (code ******)param_1" identifier = (cast_expression "(code ******)param_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }" { (expression_statement "puVar8 = puStack_164 + (int)param_1 * 5;" (assignment_expression "puVar8 = puStack_164 + (int)param_1 * 5" identifier = (binary_expression "puStack_164 + (int)param_1 * 5" identifier + (binary_expression "(int)param_1 * 5" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal))) ;) (expression_statement "pppppcStack_148 = (code *****)&pppppcStack_120;" (assignment_expression "pppppcStack_148 = (code *****)&pppppcStack_120" identifier = (cast_expression "(code *****)&pppppcStack_120" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "&pppppcStack_120" & identifier))) ;) (expression_statement "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);" (assignment_expression "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" identifier = (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x2574)" ( (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x2574" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" * (cast_expression "(int *)(puStack_198 + -0x7c94)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7c94)" ( (binary_expression "puStack_198 + -0x7c94" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);" (assignment_expression "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" identifier = (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7240)" ( (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7240" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" * (cast_expression "(int *)(puStack_198 + -0x7d50)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d50)" ( (binary_expression "puStack_198 + -0x7d50" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pppppppcVar24 = param_1;" (assignment_expression "pppppppcVar24 = param_1" identifier = identifier) ;) (expression_statement "uStack_160 = uVar20;" (assignment_expression "uStack_160 = uVar20" identifier = identifier) ;) (expression_statement "ppppppcStack_13c = (code ******)pppppppcVar25;" (assignment_expression "ppppppcStack_13c = (code ******)pppppppcVar25" identifier = (cast_expression "(code ******)pppppppcVar25" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (do_statement "do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);" do (compound_statement "{\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        }" { (expression_statement "ppppppcStack_16c = (code ******)pppppppcVar24;" (assignment_expression "ppppppcStack_16c = (code ******)pppppppcVar24" identifier = (cast_expression "(code ******)pppppppcVar24" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);" (assignment_expression "param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" identifier = (cast_expression "(code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" (parenthesized_expression "(*pcStack_14c)" ( (pointer_expression "*pcStack_14c" * identifier) )) (argument_list "(uStack_160,ppppppcStack_16c,pppppcStack_148)" ( identifier , identifier , identifier ))))) ;) (expression_statement "uVar20 = uStack_160;" (assignment_expression "uVar20 = uStack_160" identifier = identifier) ;) (expression_statement "pppppppcVar25 = (code *******)ppppppcStack_13c;" (assignment_expression "pppppppcVar25 = (code *******)ppppppcStack_13c" identifier = (cast_expression "(code *******)ppppppcStack_13c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (if_statement "if (param_2 != (code *******)0x0) goto LAB_000d799c;" if (parenthesized_expression "(param_2 != (code *******)0x0)" ( (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d799c;" goto statement_identifier ;)) (expression_statement "ppppppcStack_184 = ppppppcStack_11c + 1;" (assignment_expression "ppppppcStack_184 = ppppppcStack_11c + 1" identifier = (binary_expression "ppppppcStack_11c + 1" identifier + number_literal)) ;) (if_statement "if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" if (parenthesized_expression "(ppppppcStack_16c == ppppppcStack_158)" ( (binary_expression "ppppppcStack_16c == ppppppcStack_158" identifier == identifier) )) (compound_statement "{\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }" { (expression_statement "unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);" (assignment_expression "unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118)" identifier = (cast_expression "(code *******)((int)ppppppcStack_134 - iStack_118)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppcStack_134 - iStack_118)" ( (binary_expression "(int)ppppppcStack_134 - iStack_118" (cast_expression "(int)ppppppcStack_134" ( (type_descriptor "int" primitive_type) ) identifier) - identifier) )))) ;) }) (else_clause "else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" else (compound_statement "{\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" { (expression_statement "unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);" (assignment_expression "unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" identifier = (cast_expression "(code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" ( (binary_expression "(int)pppppcStack_120 - (int)ppppppcStack_184 >> 2" (binary_expression "(int)pppppcStack_120 - (int)ppppppcStack_184" (cast_expression "(int)pppppcStack_120" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppppppcStack_184" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal) )))) ;) }))) (expression_statement "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);" (assignment_expression "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" identifier = (cast_expression "(undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" ( (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2" (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14 + 8" (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14" (cast_expression "(int)puStack_164" ( (type_descriptor "int" primitive_type) ) identifier) + (binary_expression "puStack_164[1] * 0x14" (subscript_expression "puStack_164[1]" identifier [ number_literal ]) * number_literal)) + number_literal) + (binary_expression "iStack_118 * 2" identifier * number_literal)) )))) ;) (expression_statement "iStack_118 = iStack_118 + 1;" (assignment_expression "iStack_118 = iStack_118 + 1" identifier = (binary_expression "iStack_118 + 1" identifier + number_literal)) ;) (expression_statement "puStack_150 = puVar9;" (assignment_expression "puStack_150 = puVar9" identifier = identifier) ;) (expression_statement "ppppppcStack_11c = ppppppcStack_184;" (assignment_expression "ppppppcStack_11c = ppppppcStack_184" identifier = identifier) ;) (if_statement "if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" if (parenthesized_expression "((int)unaff_s3 < 1)" ( (binary_expression "(int)unaff_s3 < 1" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }" { (expression_statement "pppppcStack_12c = (code *****)0x0;" (assignment_expression "pppppcStack_12c = (code *****)0x0" identifier = (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "uStack_128 = uStack_128 & 0xffffffff;" (assignment_expression "uStack_128 = uStack_128 & 0xffffffff" identifier = (binary_expression "uStack_128 & 0xffffffff" identifier & number_literal)) ;) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(apppppcStack_114,0,0x68)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "param_1 = (code *******)0x1;" (assignment_expression "param_1 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (labeled_statement "LAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;" statement_identifier : (expression_statement "unaff_s5 = (code *******)apppppcStack_114;" (assignment_expression "unaff_s5 = (code *******)apppppcStack_114" identifier = (cast_expression "(code *******)apppppcStack_114" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;)) (expression_statement "param_2 = (code *******)&uStack_128;" (assignment_expression "param_2 = (code *******)&uStack_128" identifier = (cast_expression "(code *******)&uStack_128" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&uStack_128" & identifier))) ;) (expression_statement "pppppppcVar21 = (code *******)&pppppcStack_12c;" (assignment_expression "pppppppcVar21 = (code *******)&pppppcStack_12c" identifier = (cast_expression "(code *******)&pppppcStack_12c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&pppppcStack_12c" & identifier))) ;) (do_statement "do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);" do (compound_statement "{\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            }" { (if_statement "if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }" if (parenthesized_expression "(((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0)" ( (binary_expression "((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0" (parenthesized_expression "((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U)" ( (binary_expression "(int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U" (binary_expression "(int)unaff_s3 >> ((uint)param_1 & 0x1f)" (cast_expression "(int)unaff_s3" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "((uint)param_1 & 0x1f)" ( (binary_expression "(uint)param_1 & 0x1f" (cast_expression "(uint)param_1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) ))) & number_literal) )) != number_literal) )) (compound_statement "{\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }" { (expression_statement "uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2)" identifier = (call_expression "CONCAT44(pppppppcVar21,unaff_s2)" identifier (argument_list "(pppppppcVar21,unaff_s2)" ( identifier , identifier )))) ;) (expression_statement "param_4 = param_2;" (assignment_expression "param_4 = param_2" identifier = identifier) ;) (expression_statement "(*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);" (call_expression "(*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2])" (parenthesized_expression "(*pcStack_144)" ( (pointer_expression "*pcStack_144" * identifier) )) (argument_list "(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2])" ( identifier , (subscript_expression "apppppcStack_114[(int)param_1 * 2 + 1]" identifier [ (binary_expression "(int)param_1 * 2 + 1" (binary_expression "(int)param_1 * 2" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) + number_literal) ]) , (subscript_expression "unaff_s5[(int)param_1 * 2]" identifier [ (binary_expression "(int)param_1 * 2" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) * number_literal) ]) ))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) })) (expression_statement "param_1 = (code *******)((int)param_1 + 1);" (assignment_expression "param_1 = (code *******)((int)param_1 + 1)" identifier = (cast_expression "(code *******)((int)param_1 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + 1)" ( (binary_expression "(int)param_1 + 1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "(param_1 < &DAT_0000000d)" ( (binary_expression "param_1 < &DAT_0000000d" identifier < (pointer_expression "&DAT_0000000d" & identifier)) )) ;) }) (else_clause "else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" else (compound_statement "{\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" { (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "puVar13 = puVar9;" (assignment_expression "puVar13 = puVar9" identifier = identifier) ;) (do_statement "do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);" do (compound_statement "{\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            }" { (expression_statement "*puVar13 = (short)pppppppcVar24;" (assignment_expression "*puVar13 = (short)pppppppcVar24" (pointer_expression "*puVar13" * identifier) = (cast_expression "(short)pppppppcVar24" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier)) ;) (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1)" identifier = (cast_expression "(code *******)((int)pppppppcVar24 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)pppppppcVar24 + 1)" ( (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" identifier = (binary_expression "puVar13 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pppppppcVar24 != unaff_s3)" ( (binary_expression "pppppppcVar24 != unaff_s3" identifier != identifier) )) ;) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" ( (pointer_expression "**(code **)(puStack_198 + -0x7b20)" * (pointer_expression "*(code **)(puStack_198 + -0x7b20)" * (cast_expression "(code **)(puStack_198 + -0x7b20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7b20)" ( (binary_expression "puStack_198 + -0x7b20" identifier + number_literal) ))))) )) (argument_list "(apppppcStack_114,0,0x68)" ( identifier , number_literal , number_literal ))) ;) (expression_statement "pcVar3 = pcStack_144;" (assignment_expression "pcVar3 = pcStack_144" identifier = identifier) ;) (expression_statement "unaff_s5 = (code *******)&pppppcStack_12c;" (assignment_expression "unaff_s5 = (code *******)&pppppcStack_12c" identifier = (cast_expression "(code *******)&pppppcStack_12c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&pppppcStack_12c" & identifier))) ;) (expression_statement "param_2 = (code *******)0x0;" (assignment_expression "param_2 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (expression_statement "puStack_138 = puVar8;" (assignment_expression "puStack_138 = puVar8" identifier = identifier) ;) (do_statement "do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);" do (compound_statement "{\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            }" { (expression_statement "pppppcStack_12c = (code *****)0x1;" (assignment_expression "pppppcStack_12c = (code *****)0x1" identifier = (cast_expression "(code *****)0x1" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) ;) (expression_statement "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);" (assignment_expression "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_)" identifier = (call_expression "CONCAT44(puVar9,uStack_128._4_4_)" identifier (argument_list "(puVar9,uStack_128._4_4_)" ( identifier , (field_expression "uStack_128._4_4_" identifier . field_identifier) )))) ;) (if_statement "if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" if (parenthesized_expression "(((uint)param_2 & 1) == 0)" ( (binary_expression "((uint)param_2 & 1) == 0" (parenthesized_expression "((uint)param_2 & 1)" ( (binary_expression "(uint)param_2 & 1" (cast_expression "(uint)param_2" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }" { (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (expression_statement "iVar23 = 0;" (assignment_expression "iVar23 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" else (compound_statement "{\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" { (expression_statement "pppppppcVar21 = (code *******)apppppcStack_114;" (assignment_expression "pppppppcVar21 = (code *******)apppppcStack_114" identifier = (cast_expression "(code *******)apppppcStack_114" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (do_statement "do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);" do (compound_statement "{\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                }" { (expression_statement "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2)" identifier = (call_expression "CONCAT44(unaff_s5,unaff_s2)" identifier (argument_list "(unaff_s5,unaff_s2)" ( identifier , identifier )))) ;) (expression_statement "param_4 = (code *******)&uStack_128;" (assignment_expression "param_4 = (code *******)&uStack_128" identifier = (cast_expression "(code *******)&uStack_128" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&uStack_128" & identifier))) ;) (expression_statement "(*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);" (call_expression "(*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21)" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21)" ( identifier , (subscript_expression "pppppppcVar21[1]" identifier [ number_literal ]) , (pointer_expression "*pppppppcVar21" * identifier) ))) ;) (expression_statement "uVar20 = uVar20 + 1;" (assignment_expression "uVar20 = uVar20 + 1" identifier = (binary_expression "uVar20 + 1" identifier + number_literal)) ;) (expression_statement "pppppppcVar21 = pppppppcVar21 + 2;" (assignment_expression "pppppppcVar21 = pppppppcVar21 + 2" identifier = (binary_expression "pppppppcVar21 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "(((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0)" ( (binary_expression "((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0" (parenthesized_expression "((int)param_2 >> (uVar20 & 0x1f) & 1U)" ( (binary_expression "(int)param_2 >> (uVar20 & 0x1f) & 1U" (binary_expression "(int)param_2 >> (uVar20 & 0x1f)" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) >> (parenthesized_expression "(uVar20 & 0x1f)" ( (binary_expression "uVar20 & 0x1f" identifier & number_literal) ))) & number_literal) )) != number_literal) )) ;) (expression_statement "iVar23 = uVar20 * 8;" (assignment_expression "iVar23 = uVar20 * 8" identifier = (binary_expression "uVar20 * 8" identifier * number_literal)) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }))) (expression_statement "*(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;" (assignment_expression "*(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_" (pointer_expression "*(code *******)((int)apppppcStack_114 + iVar23 + 4)" * (cast_expression "(code *******)((int)apppppcStack_114 + iVar23 + 4)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)apppppcStack_114 + iVar23 + 4)" ( (binary_expression "(int)apppppcStack_114 + iVar23 + 4" (binary_expression "(int)apppppcStack_114 + iVar23" (cast_expression "(int)apppppcStack_114" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal) )))) = (field_expression "uStack_128._0_4_" identifier . field_identifier)) ;) (expression_statement "*(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;" (assignment_expression "*(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c" (pointer_expression "*(code ******)((int)apppppcStack_114 + iVar23)" * (cast_expression "(code ******)((int)apppppcStack_114 + iVar23)" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (parenthesized_expression "((int)apppppcStack_114 + iVar23)" ( (binary_expression "(int)apppppcStack_114 + iVar23" (cast_expression "(int)apppppcStack_114" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) = identifier) ;) (expression_statement "param_2 = (code *******)((int)param_2 + 1);" (assignment_expression "param_2 = (code *******)((int)param_2 + 1)" identifier = (cast_expression "(code *******)((int)param_2 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_2 + 1)" ( (binary_expression "(int)param_2 + 1" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "puVar9 = puVar9 + 1;" (assignment_expression "puVar9 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(param_2 != unaff_s3)" ( (binary_expression "param_2 != unaff_s3" identifier != identifier) )) ;) (expression_statement "param_1 = (code *******)(uVar20 + 1);" (assignment_expression "param_1 = (code *******)(uVar20 + 1)" identifier = (cast_expression "(code *******)(uVar20 + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar20 + 1)" ( (binary_expression "uVar20 + 1" identifier + number_literal) )))) ;) (expression_statement "puVar8 = puStack_138;" (assignment_expression "puVar8 = puStack_138" identifier = identifier) ;) (if_statement "if (param_1 < &DAT_0000000d) goto LAB_000d78d0;" if (parenthesized_expression "(param_1 < &DAT_0000000d)" ( (binary_expression "param_1 < &DAT_0000000d" identifier < (pointer_expression "&DAT_0000000d" & identifier)) )) (goto_statement "goto LAB_000d78d0;" goto statement_identifier ;)) }))) (expression_statement "puVar8[6] = iStack_118;" (assignment_expression "puVar8[6] = iStack_118" (subscript_expression "puVar8[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[5] = pppppcStack_12c;" (assignment_expression "puVar8[5] = pppppcStack_12c" (subscript_expression "puVar8[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[3] = puStack_150;" (assignment_expression "puVar8[3] = puStack_150" (subscript_expression "puVar8[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8[4] = ppppppcStack_11c;" (assignment_expression "puVar8[4] = ppppppcStack_11c" (subscript_expression "puVar8[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar8 = puVar8 + 5;" (assignment_expression "puVar8 = puVar8 + 5" identifier = (binary_expression "puVar8 + 5" identifier + number_literal)) ;) (expression_statement "uVar20 = uStack_160;" (assignment_expression "uVar20 = uStack_160" identifier = identifier) ;) (expression_statement "pppppppcVar25 = (code *******)ppppppcStack_13c;" (assignment_expression "pppppppcVar25 = (code *******)ppppppcStack_13c" identifier = (cast_expression "(code *******)ppppppcStack_13c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1)" identifier = (cast_expression "(code *******)((int)ppppppcStack_16c + 1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)ppppppcStack_16c + 1)" ( (binary_expression "(int)ppppppcStack_16c + 1" (cast_expression "(int)ppppppcStack_16c" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) }) while (parenthesized_expression "((int)ppppppcStack_16c < (int)ppppppcStack_158)" ( (binary_expression "(int)ppppppcStack_16c < (int)ppppppcStack_158" (cast_expression "(int)ppppppcStack_16c" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)ppppppcStack_158" ( (type_descriptor "int" primitive_type) ) identifier)) )) ;) })) (expression_statement "(**(code **)(puVar22 + -0x7fa8))(unaff_s2);" (call_expression "(**(code **)(puVar22 + -0x7fa8))(unaff_s2)" (parenthesized_expression "(**(code **)(puVar22 + -0x7fa8))" ( (pointer_expression "**(code **)(puVar22 + -0x7fa8)" * (pointer_expression "*(code **)(puVar22 + -0x7fa8)" * (cast_expression "(code **)(puVar22 + -0x7fa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7fa8)" ( (binary_expression "puVar22 + -0x7fa8" identifier + number_literal) ))))) )) (argument_list "(unaff_s2)" ( identifier ))) ;) (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "param_4 = (code *******)0x3;" (assignment_expression "param_4 = (code *******)0x3" identifier = (cast_expression "(code *******)0x3" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (expression_statement "pppppppcVar24 = (code *******)local_6c;" (assignment_expression "pppppppcVar24 = (code *******)local_6c" identifier = (cast_expression "(code *******)local_6c" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (if_statement "if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" if (parenthesized_expression "(pppppppcVar6 != (code *******)0x0)" ( (binary_expression "pppppppcVar6 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" { (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;" if (parenthesized_expression "(pppppppcVar6 == (code *******)&DAT_00000005)" ( (binary_expression "pppppppcVar6 == (code *******)&DAT_00000005" identifier == (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) (goto_statement "goto LAB_000d765c;" goto statement_identifier ;)) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);" (assignment_expression "ppppppcStack_184 = *(code *******)(iStack_154 + 0x60)" identifier = (pointer_expression "*(code *******)(iStack_154 + 0x60)" * (cast_expression "(code *******)(iStack_154 + 0x60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "*(code *******)(iStack_154 + 0x80) = ppppppcStack_168;" (assignment_expression "*(code *******)(iStack_154 + 0x80) = ppppppcStack_168" (pointer_expression "*(code *******)(iStack_154 + 0x80)" * (cast_expression "(code *******)(iStack_154 + 0x80)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iStack_154 + 0x80)" ( (binary_expression "iStack_154 + 0x80" identifier + number_literal) )))) = identifier) ;) (expression_statement "uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;" (assignment_expression "uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e" identifier = (binary_expression "(uint)((int)local_6c << 0x1c) >> 0x1e" (call_expression "(uint)((int)local_6c << 0x1c)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)local_6c << 0x1c)" ( (binary_expression "(int)local_6c << 0x1c" (cast_expression "(int)local_6c" ( (type_descriptor "int" primitive_type) ) identifier) << number_literal) ))) >> number_literal)) ;) (expression_statement "param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);" (assignment_expression "param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" identifier = (cast_expression "(code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 8),uStack_160)" ( (pointer_expression "*(undefined4 *)(uVar20 + 8)" * (cast_expression "(undefined4 *)(uVar20 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 8)" ( (binary_expression "uVar20 + 8" identifier + number_literal) )))) , identifier ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }" if (parenthesized_expression "(param_2 == (code *******)0x0)" ( (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }" { (expression_statement "ppppppcStack_16c = ppppppcStack_15c;" (assignment_expression "ppppppcStack_16c = ppppppcStack_15c" identifier = identifier) ;) (expression_statement "uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);" (assignment_expression "uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c)" identifier = (binary_expression "ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c)" (call_expression "ZEXT48(ppppppcStack_140)" identifier (argument_list "(ppppppcStack_140)" ( identifier ))) * (call_expression "ZEXT48(ppppppcStack_15c)" identifier (argument_list "(ppppppcStack_15c)" ( identifier ))))) ;) (expression_statement "unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);" (assignment_expression "unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" identifier = (cast_expression "(code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa6c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , (pointer_expression "&pppppcStack_120" & identifier) ))))) ;) (expression_statement "param_2 = unaff_s2;" (assignment_expression "param_2 = unaff_s2" identifier = identifier) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }" if (parenthesized_expression "(unaff_s2 == (code *******)0x0)" ( (binary_expression "unaff_s2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }" { (if_statement "if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }" if (parenthesized_expression "(((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_))))" ( (binary_expression "((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))" (parenthesized_expression "((int)pppppcStack_120 < (int)uStack_128._0_4_)" ( (binary_expression "(int)pppppcStack_120 < (int)uStack_128._0_4_" (cast_expression "(int)pppppcStack_120" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)uStack_128._0_4_" ( (type_descriptor "int" primitive_type) ) (field_expression "uStack_128._0_4_" identifier . field_identifier))) )) || (parenthesized_expression "((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))" ( (parenthesized_expression "(uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_))" ( (binary_expression "uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)" (binary_expression "uStack_128._0_4_ == (code ******)pppppcStack_120" (field_expression "uStack_128._0_4_" identifier . field_identifier) == (cast_expression "(code ******)pppppcStack_120" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) && (parenthesized_expression "(ppppppcStack_11c < uStack_128._4_4_)" ( (binary_expression "ppppppcStack_11c < uStack_128._4_4_" identifier < (field_expression "uStack_128._4_4_" identifier . field_identifier)) ))) )) ))) )) (compound_statement "{\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }" { (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xac4" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),5,&uStack_128)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , number_literal , (pointer_expression "&uStack_128" & identifier) ))) ;) })) (expression_statement "puVar8 = puStack_164;" (assignment_expression "puVar8 = puStack_164" identifier = identifier) ;) (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "unaff_s3 = (code *******)(ppppppcStack_15c + 6);" (assignment_expression "unaff_s3 = (code *******)(ppppppcStack_15c + 6)" identifier = (cast_expression "(code *******)(ppppppcStack_15c + 6)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(ppppppcStack_15c + 6)" ( (binary_expression "ppppppcStack_15c + 6" identifier + number_literal) )))) ;) (expression_statement "pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);" (assignment_expression "pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" identifier = (cast_expression "(code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x9ac" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar23 = *(int *)(puStack_198 + -0x7dc8);" (assignment_expression "iVar23 = *(int *)(puStack_198 + -0x7dc8)" identifier = (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (do_statement "do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);" do (compound_statement "{\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          }" { (do_statement "do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));" do (compound_statement "{\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            }" { (expression_statement "iVar18 = puVar8[1] + -1;" (assignment_expression "iVar18 = puVar8[1] + -1" identifier = (binary_expression "puVar8[1] + -1" (subscript_expression "puVar8[1]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "pppppppcVar6 = (code *******)*puVar8;" (assignment_expression "pppppppcVar6 = (code *******)*puVar8" identifier = (cast_expression "(code *******)*puVar8" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "*puVar8" * identifier))) ;) (if_statement "if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }" if (parenthesized_expression "(iVar18 < 0)" ( (binary_expression "iVar18 < 0" identifier < number_literal) )) (compound_statement "{\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }" { (expression_statement "*puStack_164 = 0xffffffff;" (assignment_expression "*puStack_164 = 0xffffffff" (pointer_expression "*puStack_164" * identifier) = number_literal) ;) (labeled_statement "LAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" statement_identifier : (if_statement "if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" if (parenthesized_expression "(*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168)" ( (binary_expression "*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168" (pointer_expression "*(code ********)(**(int **)(uVar20 + 0x20) + 0x10)" * (cast_expression "(code ********)(**(int **)(uVar20 + 0x20) + 0x10)" ( (type_descriptor "code ********" type_identifier (abstract_pointer_declarator "********" * (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))))) ) (parenthesized_expression "(**(int **)(uVar20 + 0x20) + 0x10)" ( (binary_expression "**(int **)(uVar20 + 0x20) + 0x10" (pointer_expression "**(int **)(uVar20 + 0x20)" * (pointer_expression "*(int **)(uVar20 + 0x20)" * (cast_expression "(int **)(uVar20 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 0x20)" ( (binary_expression "uVar20 + 0x20" identifier + number_literal) ))))) + number_literal) )))) == (cast_expression "(code *******)ppppppcStack_168" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) )) (compound_statement "{\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" { (expression_statement "param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);" (assignment_expression "param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" identifier = (cast_expression "(code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" ( (binary_expression "*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c" (pointer_expression "*(int *)(uVar20 + 0x48)" * (cast_expression "(int *)(uVar20 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x48)" ( (binary_expression "uVar20 + 0x48" identifier + number_literal) )))) * (cast_expression "(int)ppppppcStack_15c" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));" (assignment_expression "param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" identifier = (cast_expression "(code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))" ( (pointer_expression "*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14)" * (cast_expression "(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar22 + -0x7dc8) + 0xa14)" ( (binary_expression "*(int *)(puVar22 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puVar22 + -0x7dc8)" * (cast_expression "(int *)(puVar22 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + -0x7dc8)" ( (binary_expression "puVar22 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4))" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;" if (parenthesized_expression "((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))" ( (binary_expression "(param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0)" (parenthesized_expression "(param_2 != (code *******)0x0)" ( (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) || (parenthesized_expression "(param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0)" ( (comma_expression "param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0" (assignment_expression "param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" identifier = (cast_expression "(code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),uStack_160)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , identifier ))))) , (comma_expression "puVar22 = puStack_198, param_2 != (code *******)0x0" (assignment_expression "puVar22 = puStack_198" identifier = identifier) , (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)))) ))) )) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;)) }))) (expression_statement "*(code *******)(iStack_154 + 0x60) = ppppppcStack_168;" (assignment_expression "*(code *******)(iStack_154 + 0x60) = ppppppcStack_168" (pointer_expression "*(code *******)(iStack_154 + 0x60)" * (cast_expression "(code *******)(iStack_154 + 0x60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) )))) = identifier) ;) (expression_statement "param_2 = unaff_s2;" (assignment_expression "param_2 = unaff_s2" identifier = identifier) ;) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;) })) (expression_statement "piVar14 = puVar8 + puVar8[1] * 5;" (assignment_expression "piVar14 = puVar8 + puVar8[1] * 5" identifier = (binary_expression "puVar8 + puVar8[1] * 5" identifier + (binary_expression "puVar8[1] * 5" (subscript_expression "puVar8[1]" identifier [ number_literal ]) * number_literal))) ;) (expression_statement "param_1 = (code *******)0xffffffff;" (assignment_expression "param_1 = (code *******)0xffffffff" identifier = (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (do_statement "do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);" do (compound_statement "{\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              }" { (expression_statement "iVar10 = piVar14[-3];" (assignment_expression "iVar10 = piVar14[-3]" identifier = (subscript_expression "piVar14[-3]" identifier [ number_literal ])) ;) (if_statement "if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }" if (parenthesized_expression "(iVar10 < *piVar14)" ( (binary_expression "iVar10 < *piVar14" identifier < (pointer_expression "*piVar14" * identifier)) )) (compound_statement "{\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }" { (expression_statement "param_4 = (code *******)piVar14[-1];" (assignment_expression "param_4 = (code *******)piVar14[-1]" identifier = (cast_expression "(code *******)piVar14[-1]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "piVar14[-1]" identifier [ number_literal ]))) ;) (expression_statement "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);" (assignment_expression "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" identifier = (binary_expression "(uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(piVar14[-2] + iVar10 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar14[-2] + iVar10 * 2)" ( (binary_expression "piVar14[-2] + iVar10 * 2" (subscript_expression "piVar14[-2]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) ))))) ;) (expression_statement "pppppppcVar16 = (code *******)param_4[uVar19];" (assignment_expression "pppppppcVar16 = (code *******)param_4[uVar19]" identifier = (cast_expression "(code *******)param_4[uVar19]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_4[uVar19]" identifier [ identifier ]))) ;) (while_statement "while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }" while (parenthesized_expression "(pppppppcVar16 <= pppppppcVar6)" ( (binary_expression "pppppppcVar16 <= pppppppcVar6" identifier <= identifier) )) (compound_statement "{\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }" { (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;) (expression_statement "piVar14[-3] = iVar10;" (assignment_expression "piVar14[-3] = iVar10" (subscript_expression "piVar14[-3]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (*piVar14 <= iVar10) goto LAB_000d7b7c;" if (parenthesized_expression "(*piVar14 <= iVar10)" ( (binary_expression "*piVar14 <= iVar10" (pointer_expression "*piVar14" * identifier) <= identifier) )) (goto_statement "goto LAB_000d7b7c;" goto statement_identifier ;)) (expression_statement "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);" (assignment_expression "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" identifier = (binary_expression "(uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" ( identifier )) * (cast_expression "(ushort *)(piVar14[-2] + iVar10 * 2)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(piVar14[-2] + iVar10 * 2)" ( (binary_expression "piVar14[-2] + iVar10 * 2" (subscript_expression "piVar14[-2]" identifier [ number_literal ]) + (binary_expression "iVar10 * 2" identifier * number_literal)) ))))) ;) (expression_statement "pppppppcVar16 = (code *******)param_4[uVar19];" (assignment_expression "pppppppcVar16 = (code *******)param_4[uVar19]" identifier = (cast_expression "(code *******)param_4[uVar19]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "param_4[uVar19]" identifier [ identifier ]))) ;) })) (if_statement "if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }" if (parenthesized_expression "(pppppppcVar16 < param_1)" ( (binary_expression "pppppppcVar16 < param_1" identifier < identifier) )) (compound_statement "{\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }" { (expression_statement "pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);" (assignment_expression "pppppppcVar21 = (code *******)(uVar19 + piVar14[1])" identifier = (cast_expression "(code *******)(uVar19 + piVar14[1])" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(uVar19 + piVar14[1])" ( (binary_expression "uVar19 + piVar14[1]" identifier + (subscript_expression "piVar14[1]" identifier [ number_literal ])) )))) ;) (expression_statement "param_1 = pppppppcVar16;" (assignment_expression "param_1 = pppppppcVar16" identifier = identifier) ;) })) })) (labeled_statement "LAB_000d7b7c:\n                                iVar18 = iVar18 + -1;" statement_identifier : (expression_statement "iVar18 = iVar18 + -1;" (assignment_expression "iVar18 = iVar18 + -1" identifier = (binary_expression "iVar18 + -1" identifier + number_literal)) ;)) (expression_statement "piVar14 = piVar14 + -5;" (assignment_expression "piVar14 = piVar14 + -5" identifier = (binary_expression "piVar14 + -5" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar18 != -1)" ( (binary_expression "iVar18 != -1" identifier != number_literal) )) ;) (expression_statement "*puVar8 = param_1;" (assignment_expression "*puVar8 = param_1" (pointer_expression "*puVar8" * identifier) = identifier) ;) (if_statement "if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;" if (parenthesized_expression "(param_1 == (code *******)0xffffffff)" ( (binary_expression "param_1 == (code *******)0xffffffff" identifier == (cast_expression "(code *******)0xffffffff" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d7ef8;" goto statement_identifier ;)) (if_statement "if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" if (parenthesized_expression "((code ******)ppppppcStack_180[0x44] != (code ******)0x0)" ( (binary_expression "(code ******)ppppppcStack_180[0x44] != (code ******)0x0" (cast_expression "(code ******)ppppppcStack_180[0x44]" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) (subscript_expression "ppppppcStack_180[0x44]" identifier [ number_literal ])) != (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) )) (compound_statement "{\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" { (expression_statement "param_2 = (code *******)&DAT_00000007;" (assignment_expression "param_2 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (if_statement "if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }" if (parenthesized_expression "(*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0)" ( (binary_expression "*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0" (pointer_expression "*(code *)((int)ppppppcStack_180 + 0x51)" * (cast_expression "(code *)((int)ppppppcStack_180 + 0x51)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)ppppppcStack_180 + 0x51)" ( (binary_expression "(int)ppppppcStack_180 + 0x51" (cast_expression "(int)ppppppcStack_180" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (cast_expression "(code)0x0" ( (type_descriptor "code" type_identifier) ) number_literal)) )) (compound_statement "{\n                                  param_2 = (code *******)&DAT_00000009;\n                                }" { (expression_statement "param_2 = (code *******)&DAT_00000009;" (assignment_expression "param_2 = (code *******)&DAT_00000009" identifier = (cast_expression "(code *******)&DAT_00000009" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000009" & identifier))) ;) })) (goto_statement "goto LAB_000d7a74;" goto statement_identifier ;) })) }) while (parenthesized_expression "(((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1))" ( (binary_expression "((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1)" (parenthesized_expression "((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21))" ( (binary_expression "(pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)" (parenthesized_expression "(pppppppcVar21 <= ppppppcStack_184)" ( (binary_expression "pppppppcVar21 <= ppppppcStack_184" identifier <= identifier) )) || (parenthesized_expression "(ppppppcStack_168 < pppppppcVar21)" ( (binary_expression "ppppppcStack_168 < pppppppcVar21" identifier < identifier) ))) )) || (parenthesized_expression "(ppppppcStack_140 < param_1)" ( (binary_expression "ppppppcStack_140 < param_1" identifier < identifier) ))) )) ;) (expression_statement "uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;" (assignment_expression "uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38" identifier = (binary_expression "ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38" (binary_expression "ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3)" (call_expression "ZEXT48((code *)((int)pppppppcVar21 + -1))" identifier (argument_list "((code *)((int)pppppppcVar21 + -1))" ( (cast_expression "(code *)((int)pppppppcVar21 + -1)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppppcVar21 + -1)" ( (binary_expression "(int)pppppppcVar21 + -1" (cast_expression "(int)pppppppcVar21" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) ))) * (call_expression "ZEXT48(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier )))) + number_literal)) ;) (expression_statement "param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);" (assignment_expression "param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" identifier = (cast_expression "(code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" (parenthesized_expression "(*(code *)pppppppcVar24)" ( (pointer_expression "*(code *)pppppppcVar24" * (cast_expression "(code *)pppppppcVar24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" ( (pointer_expression "*(undefined4 *)(uVar20 + 8)" * (cast_expression "(undefined4 *)(uVar20 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 8)" ( (binary_expression "uVar20 + 8" identifier + number_literal) )))) , identifier , identifier ))))) ;) (expression_statement "param_1 = (code *******)((int)param_1 + -1);" (assignment_expression "param_1 = (code *******)((int)param_1 + -1)" identifier = (cast_expression "(code *******)((int)param_1 + -1)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "((int)param_1 + -1)" ( (binary_expression "(int)param_1 + -1" (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (if_statement "if (param_2 != (code *******)0x0) break;" if (parenthesized_expression "(param_2 != (code *******)0x0)" ( (binary_expression "param_2 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (break_statement "break;" break ;)) (expression_statement "uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);" (assignment_expression "uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c)" identifier = (binary_expression "ZEXT48(param_1) * ZEXT48(ppppppcStack_16c)" (call_expression "ZEXT48(param_1)" identifier (argument_list "(param_1)" ( identifier ))) * (call_expression "ZEXT48(ppppppcStack_16c)" identifier (argument_list "(ppppppcStack_16c)" ( identifier ))))) ;) (expression_statement "param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);" (assignment_expression "param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" identifier = (cast_expression "(code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" (parenthesized_expression "(*(code *)(iVar23 + 0x9e0))" ( (pointer_expression "*(code *)(iVar23 + 0x9e0)" * (cast_expression "(code *)(iVar23 + 0x9e0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x9e0)" ( (binary_expression "iVar23 + 0x9e0" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" ( (pointer_expression "*(undefined4 *)(uVar20 + 4)" * (cast_expression "(undefined4 *)(uVar20 + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 4)" ( (binary_expression "uVar20 + 4" identifier + number_literal) )))) , identifier , identifier ))))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }) while (parenthesized_expression "(param_2 == (code *******)0x0)" ( (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) ;) })) })) (labeled_statement "LAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);" statement_identifier : (expression_statement "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);" (call_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1)" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puVar22 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puVar22 + -0x7dc8)" * (cast_expression "(int *)(puVar22 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + -0x7dc8)" ( (binary_expression "puVar22 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,3,1)" ( identifier , number_literal , number_literal ))) ;)) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) (goto_statement "goto LAB_000d7648;" goto statement_identifier ;) })) (expression_statement "pppppppcVar6 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000007" identifier = (cast_expression "(code *******)&DAT_00000007" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000007" & identifier))) ;) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" identifier = identifier) ;) }) (else_clause "else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" else (compound_statement "{\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" { (labeled_statement "LAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;" statement_identifier : (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (labeled_statement "LAB_000d7648:\n                    unaff_s5 = pppppppcVar24;" statement_identifier : (expression_statement "unaff_s5 = pppppppcVar24;" (assignment_expression "unaff_s5 = pppppppcVar24" identifier = identifier) ;)) (if_statement "if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;" if (parenthesized_expression "((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0))" ( (binary_expression "(param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)" (parenthesized_expression "(param_2 == (code *******)&DAT_00000005)" ( (binary_expression "param_2 == (code *******)&DAT_00000005" identifier == (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) || (parenthesized_expression "(pppppppcVar6 = param_2, param_2 == (code *******)0x0)" ( (comma_expression "pppppppcVar6 = param_2, param_2 == (code *******)0x0" (assignment_expression "pppppppcVar6 = param_2" identifier = identifier) , (binary_expression "param_2 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal))) ))) )) (goto_statement "goto LAB_000d765c;" goto statement_identifier ;)) }))) }) (else_clause "else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" else (compound_statement "{\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" { (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (labeled_statement "LAB_000d765c:\n                  pppppppcVar24 = unaff_s5;" statement_identifier : (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" identifier = identifier) ;)) (if_statement "if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" if (parenthesized_expression "((code *******)ppppppcStack_170 == (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_170 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n                    pppppppcVar6 = (code *******)0x0;\n                  }" { (expression_statement "pppppppcVar6 = (code *******)0x0;" (assignment_expression "pppppppcVar6 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) }) (else_clause "else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" else (compound_statement "{\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" { (if_statement "if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;" if (parenthesized_expression "(*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60))" ( (binary_expression "*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)" (pointer_expression "*(uint *)(uVar20 + 0x44)" * (cast_expression "(uint *)(uVar20 + 0x44)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) )))) <= (pointer_expression "*(uint *)(iStack_154 + 0x60)" * (cast_expression "(uint *)(iStack_154 + 0x60)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iStack_154 + 0x60)" ( (binary_expression "iStack_154 + 0x60" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000d7f78;" goto statement_identifier ;)) (expression_statement "param_1 = (code *******)ppppppcStack_170;" (assignment_expression "param_1 = (code *******)ppppppcStack_170" identifier = (cast_expression "(code *******)ppppppcStack_170" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier)) ;) (expression_statement "pppppppcVar6 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) }))) }))) (goto_statement "goto LAB_000d8010;" goto statement_identifier ;) })) (expression_statement "pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);" (assignment_expression "pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" identifier = (cast_expression "(code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" ( (binary_expression "*(int *)(puStack_198 + -0x7d2c) + 0x3b28" (pointer_expression "*(int *)(puStack_198 + -0x7d2c)" * (cast_expression "(int *)(puStack_198 + -0x7d2c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7d2c)" ( (binary_expression "puStack_198 + -0x7d2c" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(0xf176)" ( number_literal ))))) ;) }))) (if_statement "if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;" if (parenthesized_expression "((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               )" ( (binary_expression "(pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)" (parenthesized_expression "(pppppppcVar6 != (code *******)0x0)" ( (binary_expression "pppppppcVar6 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(pppppppcVar6 != (code *******)&DAT_00000005)" ( (binary_expression "pppppppcVar6 != (code *******)&DAT_00000005" identifier != (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ))) )) (goto_statement "goto LAB_000d8034;" goto statement_identifier ;)) (if_statement "if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }" if (parenthesized_expression "((code ****)pppcStack_17c != (code ****)0x0)" ( (binary_expression "(code ****)pppcStack_17c != (code ****)0x0" (cast_expression "(code ****)pppcStack_17c" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) identifier) != (cast_expression "(code ****)0x0" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) number_literal)) )) (compound_statement "{\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }" { (expression_statement "*pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);" (assignment_expression "*pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44)" (pointer_expression "*pppcStack_17c" * identifier) = (cast_expression "(code **)*(code ****)(uVar20 + 0x44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "*(code ****)(uVar20 + 0x44)" * (cast_expression "(code ****)(uVar20 + 0x44)" ( (type_descriptor "code ****" type_identifier (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(uVar20 + 0x44)" ( (binary_expression "uVar20 + 0x44" identifier + number_literal) )))))) ;) })) (if_statement "if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }" if (parenthesized_expression "((code *******)ppppppcStack_178 != (code *******)0x0)" ( (binary_expression "(code *******)ppppppcStack_178 != (code *******)0x0" (cast_expression "(code *******)ppppppcStack_178" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) identifier) != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }" { (expression_statement "*ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);" (assignment_expression "*ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" (pointer_expression "*ppppppcStack_178" * identifier) = (cast_expression "(code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" * (cast_expression "(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (parenthesized_expression "(**(int **)(uVar20 + 0x20) + 0x60)" ( (binary_expression "**(int **)(uVar20 + 0x20) + 0x60" (pointer_expression "**(int **)(uVar20 + 0x20)" * (pointer_expression "*(int **)(uVar20 + 0x20)" * (cast_expression "(int **)(uVar20 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(uVar20 + 0x20)" ( (binary_expression "uVar20 + 0x20" identifier + number_literal) ))))) + number_literal) )))))) ;) })) (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d7e2c;" goto statement_identifier ;)) }))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 0;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 0" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" * (cast_expression "(undefined1 *)(uVar20 + 0x2d)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2d)" ( (binary_expression "uVar20 + 0x2d" identifier + number_literal) )))) = number_literal) ;) (if_statement "if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }" if (parenthesized_expression "((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170))" ( (binary_expression "(pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)" (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" ( (binary_expression "pppppppcVar6 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) && (parenthesized_expression "(ppppppcStack_78 != ppppppcStack_170)" ( (binary_expression "ppppppcStack_78 != ppppppcStack_170" identifier != identifier) ))) )) (compound_statement "{\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }" { (expression_statement "pppppppcVar6 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000005" identifier = (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) ;) })) (goto_statement "goto LAB_000d7ea0;" goto statement_identifier ;) })) (if_statement "if (param_1 == (code *******)0x0) goto LAB_000d74f0;" if (parenthesized_expression "(param_1 == (code *******)0x0)" ( (binary_expression "param_1 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d74f0;" goto statement_identifier ;)) }) (else_clause "else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" else (compound_statement "{\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" { (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" identifier = (call_expression "CONCAT44(1,uStack_1a0._4_4_)" identifier (argument_list "(1,uStack_1a0._4_4_)" ( number_literal , (field_expression "uStack_1a0._4_4_" identifier . field_identifier) )))) ;) (expression_statement "pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" identifier = (cast_expression "(code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }" if (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" ( (binary_expression "pppppppcVar6 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }" { (expression_statement "*(undefined1 *)(uVar20 + 0x2c) = 1;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2c) = 1" (pointer_expression "*(undefined1 *)(uVar20 + 0x2c)" * (cast_expression "(undefined1 *)(uVar20 + 0x2c)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2c)" ( (binary_expression "uVar20 + 0x2c" identifier + number_literal) )))) = number_literal) ;) (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" identifier = identifier) ;) (goto_statement "goto LAB_000d7410;" goto statement_identifier ;) })) (if_statement "if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }" if (parenthesized_expression "(pppppppcVar6 == (code *******)&DAT_00000005)" ( (binary_expression "pppppppcVar6 == (code *******)&DAT_00000005" identifier == (cast_expression "(code *******)&DAT_00000005" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000005" & identifier))) )) (compound_statement "{\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }" { (expression_statement "ppppppcStack_18c = (code ******)0x0;" (assignment_expression "ppppppcStack_18c = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (expression_statement "ppppppcStack_170 = (code ******)0x0;" (assignment_expression "ppppppcStack_170 = (code ******)0x0" identifier = (cast_expression "(code ******)0x0" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d7410;" goto statement_identifier ;) })) (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" identifier = identifier) ;) (labeled_statement "LAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;" statement_identifier : (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" if (parenthesized_expression "(iStack_130 != 0)" ( (binary_expression "iStack_130 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000d7e2c;" goto statement_identifier ;))) }))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" identifier = (cast_expression "(code *******)0x1" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" ( (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" * (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" ( (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" * (cast_expression "(int *)(puStack_198 + -0x7dc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puStack_198 + -0x7dc8)" ( (binary_expression "puStack_198 + -0x7dc8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar20)" ( identifier ))) ;) (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 0;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 0" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" * (cast_expression "(undefined1 *)(uVar20 + 0x2d)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uVar20 + 0x2d)" ( (binary_expression "uVar20 + 0x2d" identifier + number_literal) )))) = number_literal) ;) })) }) (else_clause "else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" else (compound_statement "{\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" { (expression_statement "pppppppcVar6 = (code *******)&DAT_00000008;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000008" identifier = (cast_expression "(code *******)&DAT_00000008" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (pointer_expression "&DAT_00000008" & identifier))) ;) }))) (labeled_statement "LAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }" statement_identifier : (if_statement "if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }" if (parenthesized_expression "(apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54))" ( (binary_expression "apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)" (subscript_expression "apppppcStack_114[0x1a]" identifier [ number_literal ]) == (cast_expression "(code *****)**(int **)(puStack_198 + -0x7a54)" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) (pointer_expression "**(int **)(puStack_198 + -0x7a54)" * (pointer_expression "*(int **)(puStack_198 + -0x7a54)" * (cast_expression "(int **)(puStack_198 + -0x7a54)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7a54)" ( (binary_expression "puStack_198 + -0x7a54" identifier + number_literal) ))))))) )) (compound_statement "{\n    return pppppppcVar6;\n  }" { (return_statement "return pppppppcVar6;" return identifier ;) }))) (expression_statement "pcVar3 = *(code **)(puStack_198 + -0x7a80);" (assignment_expression "pcVar3 = *(code **)(puStack_198 + -0x7a80)" identifier = (pointer_expression "*(code **)(puStack_198 + -0x7a80)" * (cast_expression "(code **)(puStack_198 + -0x7a80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_198 + -0x7a80)" ( (binary_expression "puStack_198 + -0x7a80" identifier + number_literal) ))))) ;) (expression_statement "pcVar4 = FUN_000d80a0;" (assignment_expression "pcVar4 = FUN_000d80a0" identifier = identifier) ;) (expression_statement "pppppcVar2 = apppppcStack_114[0x1a];" (assignment_expression "pppppcVar2 = apppppcStack_114[0x1a]" identifier = (subscript_expression "apppppcStack_114[0x1a]" identifier [ number_literal ])) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar23 = uStack_1a0._0_4_;" (assignment_expression "iVar23 = uStack_1a0._0_4_" identifier = (field_expression "uStack_1a0._0_4_" identifier . field_identifier)) ;) (expression_statement "iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);" (assignment_expression "iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c)" identifier = (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" * (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" * (cast_expression "(int **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e2c)" ( (binary_expression "pcVar3 + 0xb7e2c" identifier + number_literal) )))))) ;) (expression_statement "ppppppcStack_1cc = (code ******)param_1;" (assignment_expression "ppppppcStack_1cc = (code ******)param_1" identifier = (cast_expression "(code ******)param_1" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1c8 = (code ******)pppppppcVar21;" (assignment_expression "ppppppcStack_1c8 = (code ******)pppppppcVar21" identifier = (cast_expression "(code ******)pppppppcVar21" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1c4 = (code ******)unaff_s2;" (assignment_expression "ppppppcStack_1c4 = (code ******)unaff_s2" identifier = (cast_expression "(code ******)unaff_s2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1c0 = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_1c0 = (code ******)unaff_s3" identifier = (cast_expression "(code ******)unaff_s3" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1bc = (code ******)param_2;" (assignment_expression "ppppppcStack_1bc = (code ******)param_2" identifier = (cast_expression "(code ******)param_2" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "ppppppcStack_1b8 = (code ******)unaff_s5;" (assignment_expression "ppppppcStack_1b8 = (code ******)unaff_s5" identifier = (cast_expression "(code ******)unaff_s5" ( (type_descriptor "code ******" type_identifier (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))))) ) identifier)) ;) (expression_statement "pcStack_1b4 = pcVar4;" (assignment_expression "pcStack_1b4 = pcVar4" identifier = identifier) ;) (if_statement "if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }" if (parenthesized_expression "(pppppcVar2 == (code *****)0x0)" ( (binary_expression "pppppcVar2 == (code *****)0x0" identifier == (cast_expression "(code *****)0x0" ( (type_descriptor "code *****" type_identifier (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))) ) number_literal)) )) (compound_statement "{\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (goto_statement "goto LAB_000d8300;" goto statement_identifier ;) })) (if_statement "if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" if (parenthesized_expression "(uStack_1a0._0_4_ == 0)" ( (binary_expression "uStack_1a0._0_4_ == 0" (field_expression "uStack_1a0._0_4_" identifier . field_identifier) == number_literal) )) (compound_statement "{\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }" { (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (labeled_statement "LAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;" statement_identifier : (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;)) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[2])" ( (subscript_expression "pppppcVar2[2]" identifier [ number_literal ]) ))) ;) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" identifier = (subscript_expression "pppppcVar2[8]" identifier [ number_literal ])) ;) }) (else_clause "else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" else (compound_statement "{\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" { (expression_statement "pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);" (assignment_expression "pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" identifier = (cast_expression "(code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" (parenthesized_expression "(**(code **)((int)*pppppcVar2[1] + 0x1c))" ( (pointer_expression "**(code **)((int)*pppppcVar2[1] + 0x1c)" * (pointer_expression "*(code **)((int)*pppppcVar2[1] + 0x1c)" * (cast_expression "(code **)((int)*pppppcVar2[1] + 0x1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((int)*pppppcVar2[1] + 0x1c)" ( (binary_expression "(int)*pppppcVar2[1] + 0x1c" (cast_expression "(int)*pppppcVar2[1]" ( (type_descriptor "int" primitive_type) ) (pointer_expression "*pppppcVar2[1]" * (subscript_expression "pppppcVar2[1]" identifier [ number_literal ]))) + number_literal) ))))) )) (argument_list "(pppppcVar2[1],4)" ( (subscript_expression "pppppcVar2[1]" identifier [ number_literal ]) , number_literal ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d82a0;" goto statement_identifier ;)) (if_statement "if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }" if (parenthesized_expression "(*(char *)((int)pppppcVar2 + 0x2b) == '\0')" ( (binary_expression "*(char *)((int)pppppcVar2 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)pppppcVar2 + 0x2b)" * (cast_expression "(char *)((int)pppppcVar2 + 0x2b)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppcVar2 + 0x2b)" ( (binary_expression "(int)pppppcVar2 + 0x2b" (cast_expression "(int)pppppcVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }" { (expression_statement "*(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;" (assignment_expression "*(undefined1 *)((int)pppppcVar2 + 0x2b) = 1" (pointer_expression "*(undefined1 *)((int)pppppcVar2 + 0x2b)" * (cast_expression "(undefined1 *)((int)pppppcVar2 + 0x2b)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)pppppcVar2 + 0x2b)" ( (binary_expression "(int)pppppcVar2 + 0x2b" (cast_expression "(int)pppppcVar2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) })) (expression_statement "pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);" (assignment_expression "pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" identifier = (cast_expression "(code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (call_expression "FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" identifier (argument_list "(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" ( identifier , identifier , number_literal , number_literal , number_literal , identifier , identifier , identifier , number_literal , number_literal ))))) ;) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;" if (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" ( (binary_expression "pppppppcVar21 != (code *******)0x0" identifier != (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (goto_statement "goto LAB_000d82a0;" goto statement_identifier ;)) (expression_statement "iStack_1d8 = -1;" (assignment_expression "iStack_1d8 = -1" identifier = number_literal) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xac4" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[1],10,&iStack_1d8)" ( (subscript_expression "pppppcVar2[1]" identifier [ number_literal ]) , number_literal , (pointer_expression "&iStack_1d8" & identifier) ))) ;) (if_statement "if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" if (parenthesized_expression "(iStack_1d8 == 1)" ( (binary_expression "iStack_1d8 == 1" identifier == number_literal) )) (compound_statement "{\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }" { (if_statement "if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }" if (parenthesized_expression "(-1 < (int)pppppcVar2[4])" ( (binary_expression "-1 < (int)pppppcVar2[4]" number_literal < (cast_expression "(int)pppppcVar2[4]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "pppppcVar2[4]" identifier [ number_literal ]))) )) (compound_statement "{\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b54) + 0x2844" (pointer_expression "*(int *)(pcVar3 + 0xb7b54)" * (cast_expression "(int *)(pcVar3 + 0xb7b54)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b54)" ( (binary_expression "pcVar3 + 0xb7b54" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2,1,0,0)" ( identifier , number_literal , number_literal , number_literal ))) ;) })) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" identifier = (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[2])" ( (subscript_expression "pppppcVar2[2]" identifier [ number_literal ]) ))) ;) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" identifier = (subscript_expression "pppppcVar2[8]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" else (compound_statement "{\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" * (cast_expression "(int *)(pcVar3 + 0xb7b64)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7b64)" ( (binary_expression "pcVar3 + 0xb7b64" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(pppppcVar2[2])" ( (subscript_expression "pppppcVar2[2]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "pppppppcVar24 = (code *******)pppppcVar2[0x1b];" (assignment_expression "pppppppcVar24 = (code *******)pppppcVar2[0x1b]" identifier = (cast_expression "(code *******)pppppcVar2[0x1b]" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) (subscript_expression "pppppcVar2[0x1b]" identifier [ number_literal ]))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xba0" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(*pppppcVar2,pppppppcVar24,0)" ( (pointer_expression "*pppppcVar2" * identifier) , identifier , number_literal ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" ( (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd98" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" * (cast_expression "(int *)(pcVar3 + 0xb7ab8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7ab8)" ( (binary_expression "pcVar3 + 0xb7ab8" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" identifier = (subscript_expression "pppppcVar2[8]" identifier [ number_literal ])) ;) }))) }))) (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb78d8);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb78d8)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb78d8)" * (cast_expression "(code **)(pcVar3 + 0xb78d8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb78d8)" ( (binary_expression "pcVar3 + 0xb78d8" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar4)(uVar17);" (call_expression "(*pcVar4)(uVar17)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(uVar17)" ( identifier ))) ;) (expression_statement "(*pcVar4)(pppppcVar2);" (call_expression "(*pcVar4)(pppppcVar2)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(pppppcVar2)" ( identifier ))) ;) (labeled_statement "LAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }" statement_identifier : (if_statement "if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }" if (parenthesized_expression "(iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c))" ( (binary_expression "iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)" identifier == (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" * (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" * (cast_expression "(int **)(pcVar3 + 0xb7e2c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e2c)" ( (binary_expression "pcVar3 + 0xb7e2c" identifier + number_literal) )))))) )) (compound_statement "{\n    return pppppppcVar21;\n  }" { (return_statement "return pppppppcVar21;" return identifier ;) }))) (expression_statement "pcVar3 = *(code **)(pcVar3 + 0xb7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 0xb7e00)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb7e00)" * (cast_expression "(code **)(pcVar3 + 0xb7e00)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7e00)" ( (binary_expression "pcVar3 + 0xb7e00" identifier + number_literal) ))))) ;) (expression_statement "iVar23 = iStack_1d4;" (assignment_expression "iVar23 = iStack_1d4" identifier = identifier) ;) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" ( (pointer_expression "*pcVar3" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "uVar17 = *(undefined4 *)(iVar23 + 0xd0);" (assignment_expression "uVar17 = *(undefined4 *)(iVar23 + 0xd0)" identifier = (pointer_expression "*(undefined4 *)(iVar23 + 0xd0)" * (cast_expression "(undefined4 *)(iVar23 + 0xd0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd0)" ( (binary_expression "iVar23 + 0xd0" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0xd58)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar18 = *(int *)(iVar23 + 0x88);" (assignment_expression "iVar18 = *(int *)(iVar23 + 0x88)" identifier = (pointer_expression "*(int *)(iVar23 + 0x88)" * (cast_expression "(int *)(iVar23 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x88)" ( (binary_expression "iVar23 + 0x88" identifier + number_literal) ))))) ;) (if_statement "if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }" if (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }" { (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb7634);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb7634)" identifier = (pointer_expression "*(code **)(pcVar3 + 0xb7634)" * (cast_expression "(code **)(pcVar3 + 0xb7634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7634)" ( (binary_expression "pcVar3 + 0xb7634" identifier + number_literal) ))))) ;) (do_statement "do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);" do (compound_statement "{\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    }" { (expression_statement "iVar18 = *(int *)(iVar18 + 0x10);" (assignment_expression "iVar18 = *(int *)(iVar18 + 0x10)" identifier = (pointer_expression "*(int *)(iVar18 + 0x10)" * (cast_expression "(int *)(iVar18 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0x10)" ( (binary_expression "iVar18 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "()" ( ))) ;) }) while (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) ;) })) (expression_statement "*(undefined1 *)(iVar23 + 4) = 0;" (assignment_expression "*(undefined1 *)(iVar23 + 4) = 0" (pointer_expression "*(undefined1 *)(iVar23 + 4)" * (cast_expression "(undefined1 *)(iVar23 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 4)" ( (binary_expression "iVar23 + 4" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" if (parenthesized_expression "(pppppppcVar24 == (code *******)0x0)" ( (binary_expression "pppppppcVar24 == (code *******)0x0" identifier == (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal)) )) (compound_statement "{\n    uVar11 = 0;\n  }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) }) (else_clause "else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" else (if_statement "if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" if (parenthesized_expression "(((uint)pppppppcVar24[9] & 0x800) == 0)" ( (binary_expression "((uint)pppppppcVar24[9] & 0x800) == 0" (parenthesized_expression "((uint)pppppppcVar24[9] & 0x800)" ( (binary_expression "(uint)pppppppcVar24[9] & 0x800" (cast_expression "(uint)pppppppcVar24[9]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "pppppppcVar24[9]" identifier [ number_literal ])) & number_literal) )) == number_literal) )) (compound_statement "{\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }" { (expression_statement "iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);" (assignment_expression "iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23)" identifier = (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x485c)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x485c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23)" ( identifier )))) ;) (expression_statement "uVar11 = uVar17;" (assignment_expression "uVar11 = uVar17" identifier = identifier) ;) (if_statement "if (iVar18 != 0) {\n      uVar11 = 0;\n    }" if (parenthesized_expression "(iVar18 != 0)" ( (binary_expression "iVar18 != 0" identifier != number_literal) )) (compound_statement "{\n      uVar11 = 0;\n    }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) })) }) (else_clause "else {\n    uVar11 = 0;\n  }" else (compound_statement "{\n    uVar11 = 0;\n  }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) }))))) (expression_statement "FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);" (call_expression "FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11)" identifier (argument_list "(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11)" ( (pointer_expression "*(undefined4 *)(iVar23 + 0xd8)" * (cast_expression "(undefined4 *)(iVar23 + 0xd8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd8)" ( (binary_expression "iVar23 + 0xd8" identifier + number_literal) )))) , identifier , (pointer_expression "*(undefined1 *)(iVar23 + 0xb)" * (cast_expression "(undefined1 *)(iVar23 + 0xb)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xb)" ( (binary_expression "iVar23 + 0xb" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(iVar23 + 0x98)" * (cast_expression "(undefined4 *)(iVar23 + 0x98)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x98)" ( (binary_expression "iVar23 + 0x98" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "*(undefined4 *)(iVar23 + 0xd8) = 0;" (assignment_expression "*(undefined4 *)(iVar23 + 0xd8) = 0" (pointer_expression "*(undefined4 *)(iVar23 + 0xd8)" * (cast_expression "(undefined4 *)(iVar23 + 0xd8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd8)" ( (binary_expression "iVar23 + 0xd8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" ( (binary_expression "*(int *)(pcVar3 + 0xb7878) + 0x6cb0" (pointer_expression "*(int *)(pcVar3 + 0xb7878)" * (cast_expression "(int *)(pcVar3 + 0xb7878)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7878)" ( (binary_expression "pcVar3 + 0xb7878" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23)" ( identifier ))) ;) (if_statement "if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" if (parenthesized_expression "(*(char *)(iVar23 + 0xf) == '\0')" ( (binary_expression "*(char *)(iVar23 + 0xf) == '\0'" (pointer_expression "*(char *)(iVar23 + 0xf)" * (cast_expression "(char *)(iVar23 + 0xf)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xf)" ( (binary_expression "iVar23 + 0xf" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" { (if_statement "if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }" if (parenthesized_expression "(**(int **)(iVar23 + 0x40) != 0)" ( (binary_expression "**(int **)(iVar23 + 0x40) != 0" (pointer_expression "**(int **)(iVar23 + 0x40)" * (pointer_expression "*(int **)(iVar23 + 0x40)" * (cast_expression "(int **)(iVar23 + 0x40)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + 0x40)" ( (binary_expression "iVar23 + 0x40" identifier + number_literal) ))))) != number_literal) )) (compound_statement "{\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }" { (expression_statement "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();" (assignment_expression "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" identifier = (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x47e4" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "()" ( )))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x447c)" ( (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x447c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23,uVar11)" ( identifier , identifier ))) ;) })) (expression_statement "FUN_000c96c0(iVar23);" (call_expression "FUN_000c96c0(iVar23)" identifier (argument_list "(iVar23)" ( identifier ))) ;) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) }) (else_clause "else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" else (compound_statement "{\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" { (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" ( (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x2314" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" * (cast_expression "(int *)(pcVar3 + 0xb78c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb78c0)" ( (binary_expression "pcVar3 + 0xb78c0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(iVar23)" ( identifier ))) ;) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) }))) (expression_statement "(*(code *)(iVar18 + 0xd98))();" (call_expression "(*(code *)(iVar18 + 0xd98))()" (parenthesized_expression "(*(code *)(iVar18 + 0xd98))" ( (pointer_expression "*(code *)(iVar18 + 0xd98)" * (cast_expression "(code *)(iVar18 + 0xd98)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0xd98)" ( (binary_expression "iVar18 + 0xd98" identifier + number_literal) )))) )) (argument_list "()" ( ))) ;) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" identifier = (pointer_expression "*(int *)(pcVar3 + 0xb7814)" * (cast_expression "(int *)(pcVar3 + 0xb7814)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7814)" ( (binary_expression "pcVar3 + 0xb7814" identifier + number_literal) ))))) ;) (expression_statement "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));" (call_expression "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40))" (parenthesized_expression "(*(code *)(iVar18 + 0x968))" ( (pointer_expression "*(code *)(iVar18 + 0x968)" * (cast_expression "(code *)(iVar18 + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0x968)" ( (binary_expression "iVar18 + 0x968" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(iVar23 + 0x40))" ( (pointer_expression "*(undefined4 *)(iVar23 + 0x40)" * (cast_expression "(undefined4 *)(iVar23 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x40)" ( (binary_expression "iVar23 + 0x40" identifier + number_literal) )))) ))) ;) (expression_statement "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));" (call_expression "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c))" (parenthesized_expression "(*(code *)(iVar18 + 0x968))" ( (pointer_expression "*(code *)(iVar18 + 0x968)" * (cast_expression "(code *)(iVar18 + 0x968)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar18 + 0x968)" ( (binary_expression "iVar18 + 0x968" identifier + number_literal) )))) )) (argument_list "(*(undefined4 *)(iVar23 + 0x3c))" ( (pointer_expression "*(undefined4 *)(iVar23 + 0x3c)" * (cast_expression "(undefined4 *)(iVar23 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0x3c)" ( (binary_expression "iVar23 + 0x3c" identifier + number_literal) )))) ))) ;) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))" ( (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" * (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" ( (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x52c" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" * (cast_expression "(int *)(pcVar3 + 0xb78c0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb78c0)" ( (binary_expression "pcVar3 + 0xb78c0" identifier + number_literal) )))) + number_literal) )))) )) (argument_list "(uVar17)" ( identifier ))) ;) (expression_statement "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));" (call_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c))" (parenthesized_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))" ( (pointer_expression "**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" * (pointer_expression "*(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" * (cast_expression "(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" ( (binary_expression "*(int *)(pcVar3 + 0xb7604) + -0x1adc" (pointer_expression "*(int *)(pcVar3 + 0xb7604)" * (cast_expression "(int *)(pcVar3 + 0xb7604)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar3 + 0xb7604)" ( (binary_expression "pcVar3 + 0xb7604" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c))" ( (pointer_expression "*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c)" * (cast_expression "(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar23 + 0xd4) + 0x2c)" ( (binary_expression "*(int *)(iVar23 + 0xd4) + 0x2c" (pointer_expression "*(int *)(iVar23 + 0xd4)" * (cast_expression "(int *)(iVar23 + 0xd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + 0xd4)" ( (binary_expression "iVar23 + 0xd4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "(**(code **)(pcVar3 + 0xb7634))(iVar23);" (call_expression "(**(code **)(pcVar3 + 0xb7634))(iVar23)" (parenthesized_expression "(**(code **)(pcVar3 + 0xb7634))" ( (pointer_expression "**(code **)(pcVar3 + 0xb7634)" * (pointer_expression "*(code **)(pcVar3 + 0xb7634)" * (cast_expression "(code **)(pcVar3 + 0xb7634)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar3 + 0xb7634)" ( (binary_expression "pcVar3 + 0xb7634" identifier + number_literal) ))))) )) (argument_list "(iVar23)" ( identifier ))) ;) (return_statement "return (code *******)0x0;" return (cast_expression "(code *******)0x0" ( (type_descriptor "code *******" type_identifier (abstract_pointer_declarator "*******" * (abstract_pointer_declarator "******" * (abstract_pointer_declarator "*****" * (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))))))) ) number_literal) ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))))) )))))))))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))))) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (array_declarator IDENT [ LIT ])))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))))) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression * (subscript_expression IDENT [ LIT ])))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ])))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (for_statement for ( (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ; (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) || (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) )) ; (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression LIT - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) )))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) / (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]))) + LIT) ))) != IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + LIT) )))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression LIT - (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (subscript_expression IDENT [ LIT ])) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) }))) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))))) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) / (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) ))) / IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) / (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]))) + LIT) ))) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT ))) * (call_expression IDENT (argument_list ( IDENT )))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * (cast_expression ( (type_descriptor TYPE) ) IDENT)) + (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) * (cast_expression ( (type_descriptor TYPE) ) IDENT))) + (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (call_expression IDENT (argument_list ( IDENT ))) * (call_expression IDENT (argument_list ( IDENT )))) >> LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) / (cast_expression ( (type_descriptor TYPE) ) (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]))) + LIT) ))) != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == IDENT) && (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == IDENT) && (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) + (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == IDENT) && (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) ))) )) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) <= (cast_expression ( (type_descriptor TYPE) ) IDENT)) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) != IDENT) || (parenthesized_expression ( (binary_expression IDENT <= IDENT) ))) )) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))))) , (comma_expression (assignment_expression IDENT = IDENT) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))))) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT , LIT ))))) ;) (goto_statement goto statement_identifier ;) })) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) / (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) * (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) })) })))) (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;)) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression * (subscript_expression IDENT [ LIT ])))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ])))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))) != (char_literal ' escape_sequence ')) ))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]) [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (subscript_expression (subscript_expression IDENT [ LIT ]) [ LIT ]))) + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) < (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (goto_statement goto statement_identifier ;) }))) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (subscript_expression (parenthesized_expression ( (pointer_expression * IDENT) )) [ LIT ]) ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (subscript_expression (subscript_expression IDENT [ LIT ]) [ 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 (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (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) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + LIT) , LIT , LIT ))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (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 != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) 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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) << 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 == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) }))) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT) ))) * LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) 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 , LIT , IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT , (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - IDENT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) >> LIT) )))) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT)) + LIT) + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (subscript_expression IDENT [ (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + LIT) ]) , (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) }) while (parenthesized_expression ( (binary_expression IDENT < (pointer_expression & IDENT)) )) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor (sized_type_specifier short)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (field_expression IDENT . field_identifier) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> (parenthesized_expression ( (binary_expression IDENT & LIT) ))) & LIT) )) != LIT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT) )))) = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression & IDENT)) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) 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 = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) << LIT) ))) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression IDENT (argument_list ( IDENT ))) * (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression & IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) (field_expression IDENT . field_identifier))) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression (field_expression IDENT . field_identifier) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) && (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT . field_identifier)) ))) )) ))) )) (compound_statement { (expression_statement (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 ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , (pointer_expression & IDENT) ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) * (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)))) ))) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (binary_expression (subscript_expression IDENT [ LIT ]) * LIT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ IDENT ]))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ IDENT ]))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression IDENT + (subscript_expression IDENT [ LIT ])) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) (subscript_expression IDENT [ LIT ])) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (cast_expression ( (type_descriptor TYPE) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) })) (goto_statement goto statement_identifier ;) })) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) || (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) ))) * (call_expression IDENT (argument_list ( IDENT )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression IDENT (argument_list ( IDENT ))) * (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) ;) })) })) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , LIT , LIT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT))) ))) )) (goto_statement goto statement_identifier ;)) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) }) (else_clause else (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) )))) <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) }))) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( LIT ))))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ))) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) IDENT) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (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 IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;))) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (pointer_expression & IDENT))) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT . field_identifier)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT . field_identifier) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (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 ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression * (subscript_expression IDENT [ LIT ]))) + LIT) ))))) )) (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT , LIT , IDENT , IDENT , IDENT , LIT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (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 ( (subscript_expression IDENT [ LIT ]) , LIT , (pointer_expression & IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , LIT , LIT , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (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 ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (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 ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (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 ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (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 ( (pointer_expression * IDENT) , IDENT , LIT ))) ;) (expression_statement (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 ( ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (do_statement do (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 (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) }) while (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) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )) == 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 * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))))) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) != LIT) )) (compound_statement { (expression_statement (assignment_expression 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 ( )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (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 (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))))))) ) LIT) ;) })))
(function_definition "code *******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)\n\n{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}" (type_identifier "code") (pointer_declarator "*******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (pointer_declarator "******\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (pointer_declarator "*****\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (pointer_declarator "****\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (pointer_declarator "***\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (pointer_declarator "**\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (pointer_declarator "*\nsqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (* "*") (function_declarator "sqlite3_backup_step(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (identifier "sqlite3_backup_step") (parameter_list "(code *******param_1,code *******param_2,code *******param_3,code *******param_4)" (( "(") (parameter_declaration "code *******param_1" (type_identifier "code") (pointer_declarator "*******param_1" (* "*") (pointer_declarator "******param_1" (* "*") (pointer_declarator "*****param_1" (* "*") (pointer_declarator "****param_1" (* "*") (pointer_declarator "***param_1" (* "*") (pointer_declarator "**param_1" (* "*") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))))))))) (, ",") (parameter_declaration "code *******param_2" (type_identifier "code") (pointer_declarator "*******param_2" (* "*") (pointer_declarator "******param_2" (* "*") (pointer_declarator "*****param_2" (* "*") (pointer_declarator "****param_2" (* "*") (pointer_declarator "***param_2" (* "*") (pointer_declarator "**param_2" (* "*") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))))))))) (, ",") (parameter_declaration "code *******param_3" (type_identifier "code") (pointer_declarator "*******param_3" (* "*") (pointer_declarator "******param_3" (* "*") (pointer_declarator "*****param_3" (* "*") (pointer_declarator "****param_3" (* "*") (pointer_declarator "***param_3" (* "*") (pointer_declarator "**param_3" (* "*") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))))))))) (, ",") (parameter_declaration "code *******param_4" (type_identifier "code") (pointer_declarator "*******param_4" (* "*") (pointer_declarator "******param_4" (* "*") (pointer_declarator "*****param_4" (* "*") (pointer_declarator "****param_4" (* "*") (pointer_declarator "***param_4" (* "*") (pointer_declarator "**param_4" (* "*") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))))))))) () ")")))))))))) (compound_statement "{\n  char cVar1;\n  code *****pppppcVar2;\n  code *pcVar3;\n  code *pcVar4;\n  code ****ppppcVar5;\n  code *******pppppppcVar6;\n  code *pcVar7;\n  undefined4 *puVar8;\n  undefined2 *puVar9;\n  int iVar10;\n  undefined4 uVar11;\n  code ***pppcVar12;\n  int extraout_v1;\n  undefined2 *puVar13;\n  int *piVar14;\n  code ******ppppppcVar15;\n  code *******pppppppcVar16;\n  undefined4 uVar17;\n  int iVar18;\n  uint uVar19;\n  uint uVar20;\n  code *******pppppppcVar21;\n  code *******unaff_s2;\n  code *******unaff_s3;\n  code *******unaff_s5;\n  code *******unaff_s6;\n  code *unaff_s7;\n  undefined *puVar22;\n  code *******unaff_s8;\n  int iVar23;\n  code *******pppppppcVar24;\n  code *******pppppppcVar25;\n  int iStack_1d8;\n  int iStack_1d4;\n  code ******ppppppcStack_1cc;\n  code ******ppppppcStack_1c8;\n  code ******ppppppcStack_1c4;\n  code ******ppppppcStack_1c0;\n  code ******ppppppcStack_1bc;\n  code ******ppppppcStack_1b8;\n  code *pcStack_1b4;\n  undefined8 uStack_1a0;\n  undefined *puStack_198;\n  code ******ppppppcStack_18c;\n  code ******ppppppcStack_188;\n  code ******ppppppcStack_184;\n  code ******ppppppcStack_180;\n  code ***pppcStack_17c;\n  code ******ppppppcStack_178;\n  undefined4 uStack_174;\n  code ******ppppppcStack_170;\n  code ******ppppppcStack_16c;\n  code ******ppppppcStack_168;\n  undefined4 *puStack_164;\n  uint uStack_160;\n  code ******ppppppcStack_15c;\n  code ******ppppppcStack_158;\n  int iStack_154;\n  undefined2 *puStack_150;\n  code *pcStack_14c;\n  code *****pppppcStack_148;\n  code *pcStack_144;\n  code ******ppppppcStack_140;\n  code ******ppppppcStack_13c;\n  undefined4 *puStack_138;\n  code ******ppppppcStack_134;\n  int iStack_130;\n  code *****pppppcStack_12c;\n  undefined8 uStack_128;\n  code *****pppppcStack_120;\n  code ******ppppppcStack_11c;\n  int iStack_118;\n  code *****apppppcStack_114 [27];\n  code ******ppppppcStack_a8;\n  code ******ppppppcStack_a4;\n  code ******ppppppcStack_a0;\n  code ******ppppppcStack_9c;\n  code ******ppppppcStack_98;\n  code ******ppppppcStack_94;\n  code ******ppppppcStack_90;\n  code *pcStack_8c;\n  code ******ppppppcStack_88;\n  code *pcStack_84;\n  code ******ppppppcStack_78;\n  code ******local_70;\n  code ******local_6c;\n  undefined4 uStack_64;\n  code ***local_60;\n  code ******local_5c;\n  code *****local_50;\n  code ***local_4c;\n  code ******local_40;\n  code ******local_38;\n  code ******local_34;\n  uint local_2c;\n  \n  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;\n  pppppppcVar24 = param_2;\n  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);\n  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);\n  if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }\n  if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }\n  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);\n  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);\n  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }\n  pcVar3 = FUN_000d7350;\n  uVar20 = local_2c;\n  puVar22 = PTR___stack_chk_fail_0018fea0;\n  (*(code *)PTR___stack_chk_fail_0018fea0)();\n  puStack_198 = puVar22 + 0xc05d0;\n  ppppppcStack_188 = local_70;\n  uStack_174 = uStack_64;\n  pppcStack_17c = local_60;\n  ppppppcStack_178 = local_5c;\n  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);\n  iStack_130 = 0;\n  ppppppcStack_18c = (code ******)param_4;\n  ppppppcStack_180 = (code ******)pppppppcVar24;\n  ppppppcStack_a8 = (code ******)param_1;\n  ppppppcStack_a4 = (code ******)pppppppcVar21;\n  ppppppcStack_a0 = (code ******)unaff_s2;\n  ppppppcStack_9c = (code ******)unaff_s3;\n  ppppppcStack_98 = (code ******)param_2;\n  ppppppcStack_94 = (code ******)unaff_s5;\n  ppppppcStack_90 = (code ******)unaff_s6;\n  pcStack_8c = unaff_s7;\n  ppppppcStack_88 = (code ******)unaff_s8;\n  pcStack_84 = pcVar3;\n  ppppppcStack_78 = (code ******)param_3;\n  if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }\nLAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }\n  pcVar3 = *(code **)(puStack_198 + -0x7a80);\n  pcVar4 = FUN_000d80a0;\n  pppppcVar2 = apppppcStack_114[0x1a];\n  (*pcVar3)();\n  iVar23 = uStack_1a0._0_4_;\n  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);\n  ppppppcStack_1cc = (code ******)param_1;\n  ppppppcStack_1c8 = (code ******)pppppppcVar21;\n  ppppppcStack_1c4 = (code ******)unaff_s2;\n  ppppppcStack_1c0 = (code ******)unaff_s3;\n  ppppppcStack_1bc = (code ******)param_2;\n  ppppppcStack_1b8 = (code ******)unaff_s5;\n  pcStack_1b4 = pcVar4;\n  if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }\n  if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }\n  pcVar4 = *(code **)(pcVar3 + 0xb78d8);\n  (*pcVar4)(uVar17);\n  (*pcVar4)(pppppcVar2);\nLAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }\n  pcVar3 = *(code **)(pcVar3 + 0xb7e00);\n  iVar23 = iStack_1d4;\n  (*pcVar3)();\n  uVar17 = *(undefined4 *)(iVar23 + 0xd0);\n  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();\n  iVar18 = *(int *)(iVar23 + 0x88);\n  if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }\n  *(undefined1 *)(iVar23 + 4) = 0;\n  if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }\n  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);\n  *(undefined4 *)(iVar23 + 0xd8) = 0;\n  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);\n  if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  (*(code *)(iVar18 + 0xd98))();\n  iVar18 = *(int *)(pcVar3 + 0xb7814);\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));\n  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));\n  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);\n  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));\n  (**(code **)(pcVar3 + 0xb7634))(iVar23);\n  return (code *******)0x0;\n}" ({ "{") (declaration "char cVar1;" (primitive_type "char") (identifier "cVar1") (; ";")) (declaration "code *****pppppcVar2;" (type_identifier "code") (pointer_declarator "*****pppppcVar2" (* "*") (pointer_declarator "****pppppcVar2" (* "*") (pointer_declarator "***pppppcVar2" (* "*") (pointer_declarator "**pppppcVar2" (* "*") (pointer_declarator "*pppppcVar2" (* "*") (identifier "pppppcVar2")))))) (; ";")) (declaration "code *pcVar3;" (type_identifier "code") (pointer_declarator "*pcVar3" (* "*") (identifier "pcVar3")) (; ";")) (declaration "code *pcVar4;" (type_identifier "code") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "code ****ppppcVar5;" (type_identifier "code") (pointer_declarator "****ppppcVar5" (* "*") (pointer_declarator "***ppppcVar5" (* "*") (pointer_declarator "**ppppcVar5" (* "*") (pointer_declarator "*ppppcVar5" (* "*") (identifier "ppppcVar5"))))) (; ";")) (declaration "code *******pppppppcVar6;" (type_identifier "code") (pointer_declarator "*******pppppppcVar6" (* "*") (pointer_declarator "******pppppppcVar6" (* "*") (pointer_declarator "*****pppppppcVar6" (* "*") (pointer_declarator "****pppppppcVar6" (* "*") (pointer_declarator "***pppppppcVar6" (* "*") (pointer_declarator "**pppppppcVar6" (* "*") (pointer_declarator "*pppppppcVar6" (* "*") (identifier "pppppppcVar6")))))))) (; ";")) (declaration "code *pcVar7;" (type_identifier "code") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "undefined4 *puVar8;" (type_identifier "undefined4") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "undefined2 *puVar9;" (type_identifier "undefined2") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined4 uVar11;" (type_identifier "undefined4") (identifier "uVar11") (; ";")) (declaration "code ***pppcVar12;" (type_identifier "code") (pointer_declarator "***pppcVar12" (* "*") (pointer_declarator "**pppcVar12" (* "*") (pointer_declarator "*pppcVar12" (* "*") (identifier "pppcVar12")))) (; ";")) (declaration "int extraout_v1;" (primitive_type "int") (identifier "extraout_v1") (; ";")) (declaration "undefined2 *puVar13;" (type_identifier "undefined2") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "int *piVar14;" (primitive_type "int") (pointer_declarator "*piVar14" (* "*") (identifier "piVar14")) (; ";")) (declaration "code ******ppppppcVar15;" (type_identifier "code") (pointer_declarator "******ppppppcVar15" (* "*") (pointer_declarator "*****ppppppcVar15" (* "*") (pointer_declarator "****ppppppcVar15" (* "*") (pointer_declarator "***ppppppcVar15" (* "*") (pointer_declarator "**ppppppcVar15" (* "*") (pointer_declarator "*ppppppcVar15" (* "*") (identifier "ppppppcVar15"))))))) (; ";")) (declaration "code *******pppppppcVar16;" (type_identifier "code") (pointer_declarator "*******pppppppcVar16" (* "*") (pointer_declarator "******pppppppcVar16" (* "*") (pointer_declarator "*****pppppppcVar16" (* "*") (pointer_declarator "****pppppppcVar16" (* "*") (pointer_declarator "***pppppppcVar16" (* "*") (pointer_declarator "**pppppppcVar16" (* "*") (pointer_declarator "*pppppppcVar16" (* "*") (identifier "pppppppcVar16")))))))) (; ";")) (declaration "undefined4 uVar17;" (type_identifier "undefined4") (identifier "uVar17") (; ";")) (declaration "int iVar18;" (primitive_type "int") (identifier "iVar18") (; ";")) (declaration "uint uVar19;" (type_identifier "uint") (identifier "uVar19") (; ";")) (declaration "uint uVar20;" (type_identifier "uint") (identifier "uVar20") (; ";")) (declaration "code *******pppppppcVar21;" (type_identifier "code") (pointer_declarator "*******pppppppcVar21" (* "*") (pointer_declarator "******pppppppcVar21" (* "*") (pointer_declarator "*****pppppppcVar21" (* "*") (pointer_declarator "****pppppppcVar21" (* "*") (pointer_declarator "***pppppppcVar21" (* "*") (pointer_declarator "**pppppppcVar21" (* "*") (pointer_declarator "*pppppppcVar21" (* "*") (identifier "pppppppcVar21")))))))) (; ";")) (declaration "code *******unaff_s2;" (type_identifier "code") (pointer_declarator "*******unaff_s2" (* "*") (pointer_declarator "******unaff_s2" (* "*") (pointer_declarator "*****unaff_s2" (* "*") (pointer_declarator "****unaff_s2" (* "*") (pointer_declarator "***unaff_s2" (* "*") (pointer_declarator "**unaff_s2" (* "*") (pointer_declarator "*unaff_s2" (* "*") (identifier "unaff_s2")))))))) (; ";")) (declaration "code *******unaff_s3;" (type_identifier "code") (pointer_declarator "*******unaff_s3" (* "*") (pointer_declarator "******unaff_s3" (* "*") (pointer_declarator "*****unaff_s3" (* "*") (pointer_declarator "****unaff_s3" (* "*") (pointer_declarator "***unaff_s3" (* "*") (pointer_declarator "**unaff_s3" (* "*") (pointer_declarator "*unaff_s3" (* "*") (identifier "unaff_s3")))))))) (; ";")) (declaration "code *******unaff_s5;" (type_identifier "code") (pointer_declarator "*******unaff_s5" (* "*") (pointer_declarator "******unaff_s5" (* "*") (pointer_declarator "*****unaff_s5" (* "*") (pointer_declarator "****unaff_s5" (* "*") (pointer_declarator "***unaff_s5" (* "*") (pointer_declarator "**unaff_s5" (* "*") (pointer_declarator "*unaff_s5" (* "*") (identifier "unaff_s5")))))))) (; ";")) (declaration "code *******unaff_s6;" (type_identifier "code") (pointer_declarator "*******unaff_s6" (* "*") (pointer_declarator "******unaff_s6" (* "*") (pointer_declarator "*****unaff_s6" (* "*") (pointer_declarator "****unaff_s6" (* "*") (pointer_declarator "***unaff_s6" (* "*") (pointer_declarator "**unaff_s6" (* "*") (pointer_declarator "*unaff_s6" (* "*") (identifier "unaff_s6")))))))) (; ";")) (declaration "code *unaff_s7;" (type_identifier "code") (pointer_declarator "*unaff_s7" (* "*") (identifier "unaff_s7")) (; ";")) (declaration "undefined *puVar22;" (type_identifier "undefined") (pointer_declarator "*puVar22" (* "*") (identifier "puVar22")) (; ";")) (declaration "code *******unaff_s8;" (type_identifier "code") (pointer_declarator "*******unaff_s8" (* "*") (pointer_declarator "******unaff_s8" (* "*") (pointer_declarator "*****unaff_s8" (* "*") (pointer_declarator "****unaff_s8" (* "*") (pointer_declarator "***unaff_s8" (* "*") (pointer_declarator "**unaff_s8" (* "*") (pointer_declarator "*unaff_s8" (* "*") (identifier "unaff_s8")))))))) (; ";")) (declaration "int iVar23;" (primitive_type "int") (identifier "iVar23") (; ";")) (declaration "code *******pppppppcVar24;" (type_identifier "code") (pointer_declarator "*******pppppppcVar24" (* "*") (pointer_declarator "******pppppppcVar24" (* "*") (pointer_declarator "*****pppppppcVar24" (* "*") (pointer_declarator "****pppppppcVar24" (* "*") (pointer_declarator "***pppppppcVar24" (* "*") (pointer_declarator "**pppppppcVar24" (* "*") (pointer_declarator "*pppppppcVar24" (* "*") (identifier "pppppppcVar24")))))))) (; ";")) (declaration "code *******pppppppcVar25;" (type_identifier "code") (pointer_declarator "*******pppppppcVar25" (* "*") (pointer_declarator "******pppppppcVar25" (* "*") (pointer_declarator "*****pppppppcVar25" (* "*") (pointer_declarator "****pppppppcVar25" (* "*") (pointer_declarator "***pppppppcVar25" (* "*") (pointer_declarator "**pppppppcVar25" (* "*") (pointer_declarator "*pppppppcVar25" (* "*") (identifier "pppppppcVar25")))))))) (; ";")) (declaration "int iStack_1d8;" (primitive_type "int") (identifier "iStack_1d8") (; ";")) (declaration "int iStack_1d4;" (primitive_type "int") (identifier "iStack_1d4") (; ";")) (declaration "code ******ppppppcStack_1cc;" (type_identifier "code") (pointer_declarator "******ppppppcStack_1cc" (* "*") (pointer_declarator "*****ppppppcStack_1cc" (* "*") (pointer_declarator "****ppppppcStack_1cc" (* "*") (pointer_declarator "***ppppppcStack_1cc" (* "*") (pointer_declarator "**ppppppcStack_1cc" (* "*") (pointer_declarator "*ppppppcStack_1cc" (* "*") (identifier "ppppppcStack_1cc"))))))) (; ";")) (declaration "code ******ppppppcStack_1c8;" (type_identifier "code") (pointer_declarator "******ppppppcStack_1c8" (* "*") (pointer_declarator "*****ppppppcStack_1c8" (* "*") (pointer_declarator "****ppppppcStack_1c8" (* "*") (pointer_declarator "***ppppppcStack_1c8" (* "*") (pointer_declarator "**ppppppcStack_1c8" (* "*") (pointer_declarator "*ppppppcStack_1c8" (* "*") (identifier "ppppppcStack_1c8"))))))) (; ";")) (declaration "code ******ppppppcStack_1c4;" (type_identifier "code") (pointer_declarator "******ppppppcStack_1c4" (* "*") (pointer_declarator "*****ppppppcStack_1c4" (* "*") (pointer_declarator "****ppppppcStack_1c4" (* "*") (pointer_declarator "***ppppppcStack_1c4" (* "*") (pointer_declarator "**ppppppcStack_1c4" (* "*") (pointer_declarator "*ppppppcStack_1c4" (* "*") (identifier "ppppppcStack_1c4"))))))) (; ";")) (declaration "code ******ppppppcStack_1c0;" (type_identifier "code") (pointer_declarator "******ppppppcStack_1c0" (* "*") (pointer_declarator "*****ppppppcStack_1c0" (* "*") (pointer_declarator "****ppppppcStack_1c0" (* "*") (pointer_declarator "***ppppppcStack_1c0" (* "*") (pointer_declarator "**ppppppcStack_1c0" (* "*") (pointer_declarator "*ppppppcStack_1c0" (* "*") (identifier "ppppppcStack_1c0"))))))) (; ";")) (declaration "code ******ppppppcStack_1bc;" (type_identifier "code") (pointer_declarator "******ppppppcStack_1bc" (* "*") (pointer_declarator "*****ppppppcStack_1bc" (* "*") (pointer_declarator "****ppppppcStack_1bc" (* "*") (pointer_declarator "***ppppppcStack_1bc" (* "*") (pointer_declarator "**ppppppcStack_1bc" (* "*") (pointer_declarator "*ppppppcStack_1bc" (* "*") (identifier "ppppppcStack_1bc"))))))) (; ";")) (declaration "code ******ppppppcStack_1b8;" (type_identifier "code") (pointer_declarator "******ppppppcStack_1b8" (* "*") (pointer_declarator "*****ppppppcStack_1b8" (* "*") (pointer_declarator "****ppppppcStack_1b8" (* "*") (pointer_declarator "***ppppppcStack_1b8" (* "*") (pointer_declarator "**ppppppcStack_1b8" (* "*") (pointer_declarator "*ppppppcStack_1b8" (* "*") (identifier "ppppppcStack_1b8"))))))) (; ";")) (declaration "code *pcStack_1b4;" (type_identifier "code") (pointer_declarator "*pcStack_1b4" (* "*") (identifier "pcStack_1b4")) (; ";")) (declaration "undefined8 uStack_1a0;" (type_identifier "undefined8") (identifier "uStack_1a0") (; ";")) (declaration "undefined *puStack_198;" (type_identifier "undefined") (pointer_declarator "*puStack_198" (* "*") (identifier "puStack_198")) (; ";")) (declaration "code ******ppppppcStack_18c;" (type_identifier "code") (pointer_declarator "******ppppppcStack_18c" (* "*") (pointer_declarator "*****ppppppcStack_18c" (* "*") (pointer_declarator "****ppppppcStack_18c" (* "*") (pointer_declarator "***ppppppcStack_18c" (* "*") (pointer_declarator "**ppppppcStack_18c" (* "*") (pointer_declarator "*ppppppcStack_18c" (* "*") (identifier "ppppppcStack_18c"))))))) (; ";")) (declaration "code ******ppppppcStack_188;" (type_identifier "code") (pointer_declarator "******ppppppcStack_188" (* "*") (pointer_declarator "*****ppppppcStack_188" (* "*") (pointer_declarator "****ppppppcStack_188" (* "*") (pointer_declarator "***ppppppcStack_188" (* "*") (pointer_declarator "**ppppppcStack_188" (* "*") (pointer_declarator "*ppppppcStack_188" (* "*") (identifier "ppppppcStack_188"))))))) (; ";")) (declaration "code ******ppppppcStack_184;" (type_identifier "code") (pointer_declarator "******ppppppcStack_184" (* "*") (pointer_declarator "*****ppppppcStack_184" (* "*") (pointer_declarator "****ppppppcStack_184" (* "*") (pointer_declarator "***ppppppcStack_184" (* "*") (pointer_declarator "**ppppppcStack_184" (* "*") (pointer_declarator "*ppppppcStack_184" (* "*") (identifier "ppppppcStack_184"))))))) (; ";")) (declaration "code ******ppppppcStack_180;" (type_identifier "code") (pointer_declarator "******ppppppcStack_180" (* "*") (pointer_declarator "*****ppppppcStack_180" (* "*") (pointer_declarator "****ppppppcStack_180" (* "*") (pointer_declarator "***ppppppcStack_180" (* "*") (pointer_declarator "**ppppppcStack_180" (* "*") (pointer_declarator "*ppppppcStack_180" (* "*") (identifier "ppppppcStack_180"))))))) (; ";")) (declaration "code ***pppcStack_17c;" (type_identifier "code") (pointer_declarator "***pppcStack_17c" (* "*") (pointer_declarator "**pppcStack_17c" (* "*") (pointer_declarator "*pppcStack_17c" (* "*") (identifier "pppcStack_17c")))) (; ";")) (declaration "code ******ppppppcStack_178;" (type_identifier "code") (pointer_declarator "******ppppppcStack_178" (* "*") (pointer_declarator "*****ppppppcStack_178" (* "*") (pointer_declarator "****ppppppcStack_178" (* "*") (pointer_declarator "***ppppppcStack_178" (* "*") (pointer_declarator "**ppppppcStack_178" (* "*") (pointer_declarator "*ppppppcStack_178" (* "*") (identifier "ppppppcStack_178"))))))) (; ";")) (declaration "undefined4 uStack_174;" (type_identifier "undefined4") (identifier "uStack_174") (; ";")) (declaration "code ******ppppppcStack_170;" (type_identifier "code") (pointer_declarator "******ppppppcStack_170" (* "*") (pointer_declarator "*****ppppppcStack_170" (* "*") (pointer_declarator "****ppppppcStack_170" (* "*") (pointer_declarator "***ppppppcStack_170" (* "*") (pointer_declarator "**ppppppcStack_170" (* "*") (pointer_declarator "*ppppppcStack_170" (* "*") (identifier "ppppppcStack_170"))))))) (; ";")) (declaration "code ******ppppppcStack_16c;" (type_identifier "code") (pointer_declarator "******ppppppcStack_16c" (* "*") (pointer_declarator "*****ppppppcStack_16c" (* "*") (pointer_declarator "****ppppppcStack_16c" (* "*") (pointer_declarator "***ppppppcStack_16c" (* "*") (pointer_declarator "**ppppppcStack_16c" (* "*") (pointer_declarator "*ppppppcStack_16c" (* "*") (identifier "ppppppcStack_16c"))))))) (; ";")) (declaration "code ******ppppppcStack_168;" (type_identifier "code") (pointer_declarator "******ppppppcStack_168" (* "*") (pointer_declarator "*****ppppppcStack_168" (* "*") (pointer_declarator "****ppppppcStack_168" (* "*") (pointer_declarator "***ppppppcStack_168" (* "*") (pointer_declarator "**ppppppcStack_168" (* "*") (pointer_declarator "*ppppppcStack_168" (* "*") (identifier "ppppppcStack_168"))))))) (; ";")) (declaration "undefined4 *puStack_164;" (type_identifier "undefined4") (pointer_declarator "*puStack_164" (* "*") (identifier "puStack_164")) (; ";")) (declaration "uint uStack_160;" (type_identifier "uint") (identifier "uStack_160") (; ";")) (declaration "code ******ppppppcStack_15c;" (type_identifier "code") (pointer_declarator "******ppppppcStack_15c" (* "*") (pointer_declarator "*****ppppppcStack_15c" (* "*") (pointer_declarator "****ppppppcStack_15c" (* "*") (pointer_declarator "***ppppppcStack_15c" (* "*") (pointer_declarator "**ppppppcStack_15c" (* "*") (pointer_declarator "*ppppppcStack_15c" (* "*") (identifier "ppppppcStack_15c"))))))) (; ";")) (declaration "code ******ppppppcStack_158;" (type_identifier "code") (pointer_declarator "******ppppppcStack_158" (* "*") (pointer_declarator "*****ppppppcStack_158" (* "*") (pointer_declarator "****ppppppcStack_158" (* "*") (pointer_declarator "***ppppppcStack_158" (* "*") (pointer_declarator "**ppppppcStack_158" (* "*") (pointer_declarator "*ppppppcStack_158" (* "*") (identifier "ppppppcStack_158"))))))) (; ";")) (declaration "int iStack_154;" (primitive_type "int") (identifier "iStack_154") (; ";")) (declaration "undefined2 *puStack_150;" (type_identifier "undefined2") (pointer_declarator "*puStack_150" (* "*") (identifier "puStack_150")) (; ";")) (declaration "code *pcStack_14c;" (type_identifier "code") (pointer_declarator "*pcStack_14c" (* "*") (identifier "pcStack_14c")) (; ";")) (declaration "code *****pppppcStack_148;" (type_identifier "code") (pointer_declarator "*****pppppcStack_148" (* "*") (pointer_declarator "****pppppcStack_148" (* "*") (pointer_declarator "***pppppcStack_148" (* "*") (pointer_declarator "**pppppcStack_148" (* "*") (pointer_declarator "*pppppcStack_148" (* "*") (identifier "pppppcStack_148")))))) (; ";")) (declaration "code *pcStack_144;" (type_identifier "code") (pointer_declarator "*pcStack_144" (* "*") (identifier "pcStack_144")) (; ";")) (declaration "code ******ppppppcStack_140;" (type_identifier "code") (pointer_declarator "******ppppppcStack_140" (* "*") (pointer_declarator "*****ppppppcStack_140" (* "*") (pointer_declarator "****ppppppcStack_140" (* "*") (pointer_declarator "***ppppppcStack_140" (* "*") (pointer_declarator "**ppppppcStack_140" (* "*") (pointer_declarator "*ppppppcStack_140" (* "*") (identifier "ppppppcStack_140"))))))) (; ";")) (declaration "code ******ppppppcStack_13c;" (type_identifier "code") (pointer_declarator "******ppppppcStack_13c" (* "*") (pointer_declarator "*****ppppppcStack_13c" (* "*") (pointer_declarator "****ppppppcStack_13c" (* "*") (pointer_declarator "***ppppppcStack_13c" (* "*") (pointer_declarator "**ppppppcStack_13c" (* "*") (pointer_declarator "*ppppppcStack_13c" (* "*") (identifier "ppppppcStack_13c"))))))) (; ";")) (declaration "undefined4 *puStack_138;" (type_identifier "undefined4") (pointer_declarator "*puStack_138" (* "*") (identifier "puStack_138")) (; ";")) (declaration "code ******ppppppcStack_134;" (type_identifier "code") (pointer_declarator "******ppppppcStack_134" (* "*") (pointer_declarator "*****ppppppcStack_134" (* "*") (pointer_declarator "****ppppppcStack_134" (* "*") (pointer_declarator "***ppppppcStack_134" (* "*") (pointer_declarator "**ppppppcStack_134" (* "*") (pointer_declarator "*ppppppcStack_134" (* "*") (identifier "ppppppcStack_134"))))))) (; ";")) (declaration "int iStack_130;" (primitive_type "int") (identifier "iStack_130") (; ";")) (declaration "code *****pppppcStack_12c;" (type_identifier "code") (pointer_declarator "*****pppppcStack_12c" (* "*") (pointer_declarator "****pppppcStack_12c" (* "*") (pointer_declarator "***pppppcStack_12c" (* "*") (pointer_declarator "**pppppcStack_12c" (* "*") (pointer_declarator "*pppppcStack_12c" (* "*") (identifier "pppppcStack_12c")))))) (; ";")) (declaration "undefined8 uStack_128;" (type_identifier "undefined8") (identifier "uStack_128") (; ";")) (declaration "code *****pppppcStack_120;" (type_identifier "code") (pointer_declarator "*****pppppcStack_120" (* "*") (pointer_declarator "****pppppcStack_120" (* "*") (pointer_declarator "***pppppcStack_120" (* "*") (pointer_declarator "**pppppcStack_120" (* "*") (pointer_declarator "*pppppcStack_120" (* "*") (identifier "pppppcStack_120")))))) (; ";")) (declaration "code ******ppppppcStack_11c;" (type_identifier "code") (pointer_declarator "******ppppppcStack_11c" (* "*") (pointer_declarator "*****ppppppcStack_11c" (* "*") (pointer_declarator "****ppppppcStack_11c" (* "*") (pointer_declarator "***ppppppcStack_11c" (* "*") (pointer_declarator "**ppppppcStack_11c" (* "*") (pointer_declarator "*ppppppcStack_11c" (* "*") (identifier "ppppppcStack_11c"))))))) (; ";")) (declaration "int iStack_118;" (primitive_type "int") (identifier "iStack_118") (; ";")) (declaration "code *****apppppcStack_114 [27];" (type_identifier "code") (pointer_declarator "*****apppppcStack_114 [27]" (* "*") (pointer_declarator "****apppppcStack_114 [27]" (* "*") (pointer_declarator "***apppppcStack_114 [27]" (* "*") (pointer_declarator "**apppppcStack_114 [27]" (* "*") (pointer_declarator "*apppppcStack_114 [27]" (* "*") (array_declarator "apppppcStack_114 [27]" (identifier "apppppcStack_114") ([ "[") (number_literal "27") (] "]"))))))) (; ";")) (declaration "code ******ppppppcStack_a8;" (type_identifier "code") (pointer_declarator "******ppppppcStack_a8" (* "*") (pointer_declarator "*****ppppppcStack_a8" (* "*") (pointer_declarator "****ppppppcStack_a8" (* "*") (pointer_declarator "***ppppppcStack_a8" (* "*") (pointer_declarator "**ppppppcStack_a8" (* "*") (pointer_declarator "*ppppppcStack_a8" (* "*") (identifier "ppppppcStack_a8"))))))) (; ";")) (declaration "code ******ppppppcStack_a4;" (type_identifier "code") (pointer_declarator "******ppppppcStack_a4" (* "*") (pointer_declarator "*****ppppppcStack_a4" (* "*") (pointer_declarator "****ppppppcStack_a4" (* "*") (pointer_declarator "***ppppppcStack_a4" (* "*") (pointer_declarator "**ppppppcStack_a4" (* "*") (pointer_declarator "*ppppppcStack_a4" (* "*") (identifier "ppppppcStack_a4"))))))) (; ";")) (declaration "code ******ppppppcStack_a0;" (type_identifier "code") (pointer_declarator "******ppppppcStack_a0" (* "*") (pointer_declarator "*****ppppppcStack_a0" (* "*") (pointer_declarator "****ppppppcStack_a0" (* "*") (pointer_declarator "***ppppppcStack_a0" (* "*") (pointer_declarator "**ppppppcStack_a0" (* "*") (pointer_declarator "*ppppppcStack_a0" (* "*") (identifier "ppppppcStack_a0"))))))) (; ";")) (declaration "code ******ppppppcStack_9c;" (type_identifier "code") (pointer_declarator "******ppppppcStack_9c" (* "*") (pointer_declarator "*****ppppppcStack_9c" (* "*") (pointer_declarator "****ppppppcStack_9c" (* "*") (pointer_declarator "***ppppppcStack_9c" (* "*") (pointer_declarator "**ppppppcStack_9c" (* "*") (pointer_declarator "*ppppppcStack_9c" (* "*") (identifier "ppppppcStack_9c"))))))) (; ";")) (declaration "code ******ppppppcStack_98;" (type_identifier "code") (pointer_declarator "******ppppppcStack_98" (* "*") (pointer_declarator "*****ppppppcStack_98" (* "*") (pointer_declarator "****ppppppcStack_98" (* "*") (pointer_declarator "***ppppppcStack_98" (* "*") (pointer_declarator "**ppppppcStack_98" (* "*") (pointer_declarator "*ppppppcStack_98" (* "*") (identifier "ppppppcStack_98"))))))) (; ";")) (declaration "code ******ppppppcStack_94;" (type_identifier "code") (pointer_declarator "******ppppppcStack_94" (* "*") (pointer_declarator "*****ppppppcStack_94" (* "*") (pointer_declarator "****ppppppcStack_94" (* "*") (pointer_declarator "***ppppppcStack_94" (* "*") (pointer_declarator "**ppppppcStack_94" (* "*") (pointer_declarator "*ppppppcStack_94" (* "*") (identifier "ppppppcStack_94"))))))) (; ";")) (declaration "code ******ppppppcStack_90;" (type_identifier "code") (pointer_declarator "******ppppppcStack_90" (* "*") (pointer_declarator "*****ppppppcStack_90" (* "*") (pointer_declarator "****ppppppcStack_90" (* "*") (pointer_declarator "***ppppppcStack_90" (* "*") (pointer_declarator "**ppppppcStack_90" (* "*") (pointer_declarator "*ppppppcStack_90" (* "*") (identifier "ppppppcStack_90"))))))) (; ";")) (declaration "code *pcStack_8c;" (type_identifier "code") (pointer_declarator "*pcStack_8c" (* "*") (identifier "pcStack_8c")) (; ";")) (declaration "code ******ppppppcStack_88;" (type_identifier "code") (pointer_declarator "******ppppppcStack_88" (* "*") (pointer_declarator "*****ppppppcStack_88" (* "*") (pointer_declarator "****ppppppcStack_88" (* "*") (pointer_declarator "***ppppppcStack_88" (* "*") (pointer_declarator "**ppppppcStack_88" (* "*") (pointer_declarator "*ppppppcStack_88" (* "*") (identifier "ppppppcStack_88"))))))) (; ";")) (declaration "code *pcStack_84;" (type_identifier "code") (pointer_declarator "*pcStack_84" (* "*") (identifier "pcStack_84")) (; ";")) (declaration "code ******ppppppcStack_78;" (type_identifier "code") (pointer_declarator "******ppppppcStack_78" (* "*") (pointer_declarator "*****ppppppcStack_78" (* "*") (pointer_declarator "****ppppppcStack_78" (* "*") (pointer_declarator "***ppppppcStack_78" (* "*") (pointer_declarator "**ppppppcStack_78" (* "*") (pointer_declarator "*ppppppcStack_78" (* "*") (identifier "ppppppcStack_78"))))))) (; ";")) (declaration "code ******local_70;" (type_identifier "code") (pointer_declarator "******local_70" (* "*") (pointer_declarator "*****local_70" (* "*") (pointer_declarator "****local_70" (* "*") (pointer_declarator "***local_70" (* "*") (pointer_declarator "**local_70" (* "*") (pointer_declarator "*local_70" (* "*") (identifier "local_70"))))))) (; ";")) (declaration "code ******local_6c;" (type_identifier "code") (pointer_declarator "******local_6c" (* "*") (pointer_declarator "*****local_6c" (* "*") (pointer_declarator "****local_6c" (* "*") (pointer_declarator "***local_6c" (* "*") (pointer_declarator "**local_6c" (* "*") (pointer_declarator "*local_6c" (* "*") (identifier "local_6c"))))))) (; ";")) (declaration "undefined4 uStack_64;" (type_identifier "undefined4") (identifier "uStack_64") (; ";")) (declaration "code ***local_60;" (type_identifier "code") (pointer_declarator "***local_60" (* "*") (pointer_declarator "**local_60" (* "*") (pointer_declarator "*local_60" (* "*") (identifier "local_60")))) (; ";")) (declaration "code ******local_5c;" (type_identifier "code") (pointer_declarator "******local_5c" (* "*") (pointer_declarator "*****local_5c" (* "*") (pointer_declarator "****local_5c" (* "*") (pointer_declarator "***local_5c" (* "*") (pointer_declarator "**local_5c" (* "*") (pointer_declarator "*local_5c" (* "*") (identifier "local_5c"))))))) (; ";")) (declaration "code *****local_50;" (type_identifier "code") (pointer_declarator "*****local_50" (* "*") (pointer_declarator "****local_50" (* "*") (pointer_declarator "***local_50" (* "*") (pointer_declarator "**local_50" (* "*") (pointer_declarator "*local_50" (* "*") (identifier "local_50")))))) (; ";")) (declaration "code ***local_4c;" (type_identifier "code") (pointer_declarator "***local_4c" (* "*") (pointer_declarator "**local_4c" (* "*") (pointer_declarator "*local_4c" (* "*") (identifier "local_4c")))) (; ";")) (declaration "code ******local_40;" (type_identifier "code") (pointer_declarator "******local_40" (* "*") (pointer_declarator "*****local_40" (* "*") (pointer_declarator "****local_40" (* "*") (pointer_declarator "***local_40" (* "*") (pointer_declarator "**local_40" (* "*") (pointer_declarator "*local_40" (* "*") (identifier "local_40"))))))) (; ";")) (declaration "code ******local_38;" (type_identifier "code") (pointer_declarator "******local_38" (* "*") (pointer_declarator "*****local_38" (* "*") (pointer_declarator "****local_38" (* "*") (pointer_declarator "***local_38" (* "*") (pointer_declarator "**local_38" (* "*") (pointer_declarator "*local_38" (* "*") (identifier "local_38"))))))) (; ";")) (declaration "code ******local_34;" (type_identifier "code") (pointer_declarator "******local_34" (* "*") (pointer_declarator "*****local_34" (* "*") (pointer_declarator "****local_34" (* "*") (pointer_declarator "***local_34" (* "*") (pointer_declarator "**local_34" (* "*") (pointer_declarator "*local_34" (* "*") (identifier "local_34"))))))) (; ";")) (declaration "uint local_2c;" (type_identifier "uint") (identifier "local_2c") (; ";")) (expression_statement "local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;" (assignment_expression "local_2c = *(uint *)PTR___stack_chk_guard_0018fecc" (identifier "local_2c") (= "=") (pointer_expression "*(uint *)PTR___stack_chk_guard_0018fecc" (* "*") (cast_expression "(uint *)PTR___stack_chk_guard_0018fecc" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0018fecc")))) (; ";")) (expression_statement "pppppppcVar24 = param_2;" (assignment_expression "pppppppcVar24 = param_2" (identifier "pppppppcVar24") (= "=") (identifier "param_2")) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" (* "*") (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_mutex_enter_0018fbac"))) () ")")) (argument_list "(param_1[5][3])" (( "(") (subscript_expression "param_1[5][3]" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) ([ "[") (number_literal "3") (] "]")) () ")"))) (; ";")) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" (( "(") (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" (identifier "PTR_LAB_0018fbd0") (+ "+") (number_literal "0x40f0")) () ")")))) () ")")) (argument_list "(param_1[6])" (( "(") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) () ")"))) (; ";")) (if_statement "if (*param_1 == (code ******)0x0) {\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }\n  else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" (if "if") (parenthesized_expression "(*param_1 == (code ******)0x0)" (( "(") (binary_expression "*param_1 == (code ******)0x0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;\n    ppppppcVar15 = param_1[6];\n    local_60 = (code ***)*ppppppcVar15[1];\n    local_4c = (code ***)*param_1[1][1];\nLAB_000d69a8:\n    param_3 = (code *******)0x0;\n    if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }\n    pppppcVar2 = ppppppcVar15[1];\n    local_5c = (code ******)pppppcVar2[8];\n    local_40 = (code ******)param_1[1][1][8];\n    cVar1 = *(char *)((int)*param_1[1][1] + 5);\n    if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }\nLAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;\n    unaff_s5 = (code *******)pppppcVar2[0xb];\n    unaff_s8 = &local_38;\n    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);\n    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }\n    if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }\nLAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }\nLAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;\n  }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)param_1[7];" (assignment_expression "pppppppcVar21 = (code *******)param_1[7]" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)param_1[7]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d7330;" (goto "goto") (statement_identifier "LAB_000d7330") (; ";"))) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "local_60 = (code ***)*ppppppcVar15[1];" (assignment_expression "local_60 = (code ***)*ppppppcVar15[1]" (identifier "local_60") (= "=") (cast_expression "(code ***)*ppppppcVar15[1]" (( "(") (type_descriptor "code ***" (type_identifier "code") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "*ppppppcVar15[1]" (* "*") (subscript_expression "ppppppcVar15[1]" (identifier "ppppppcVar15") ([ "[") (number_literal "1") (] "]"))))) (; ";")) (expression_statement "local_4c = (code ***)*param_1[1][1];" (assignment_expression "local_4c = (code ***)*param_1[1][1]" (identifier "local_4c") (= "=") (cast_expression "(code ***)*param_1[1][1]" (( "(") (type_descriptor "code ***" (type_identifier "code") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "*param_1[1][1]" (* "*") (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]"))))) (; ";")) (labeled_statement "LAB_000d69a8:\n    param_3 = (code *******)0x0;" (statement_identifier "LAB_000d69a8") (: ":") (expression_statement "param_3 = (code *******)0x0;" (assignment_expression "param_3 = (code *******)0x0" (identifier "param_3") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";"))) (if_statement "if (*(char *)(ppppppcVar15 + 2) == '\0') {\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }\n    else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" (if "if") (parenthesized_expression "(*(char *)(ppppppcVar15 + 2) == '\0')" (( "(") (binary_expression "*(char *)(ppppppcVar15 + 2) == '\0'" (pointer_expression "*(char *)(ppppppcVar15 + 2)" (* "*") (cast_expression "(char *)(ppppppcVar15 + 2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppppppcVar15 + 2)" (( "(") (binary_expression "ppppppcVar15 + 2" (identifier "ppppppcVar15") (+ "+") (number_literal "2")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000cb3f8();\n      if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }\n      local_50 = (code *****)0x1;\nLAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n      ppppppcVar15 = param_1[6];\n    }" ({ "{") (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb3f8();" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb3f8()" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000cb3f8()" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000cb3f8()" (identifier "FUN_000cb3f8") (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (param_1[3] == (code ******)0x0) {\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" (if "if") (parenthesized_expression "(param_1[3] == (code ******)0x0)" (( "(") (binary_expression "param_1[3] == (code ******)0x0" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (== "==") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        local_50 = (code *****)0x1;\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        goto LAB_000d6aa4;\n      }" ({ "{") (expression_statement "local_50 = (code *****)0x1;" (assignment_expression "local_50 = (code *****)0x1" (identifier "local_50") (= "=") (cast_expression "(code *****)0x1" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x1"))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6a44;" (goto "goto") (statement_identifier "LAB_000d6a44") (; ";"))) (goto_statement "goto LAB_000d6aa4;" (goto "goto") (statement_identifier "LAB_000d6aa4") (; ";")) (} "}"))) (expression_statement "local_50 = (code *****)0x1;" (assignment_expression "local_50 = (code *****)0x1" (identifier "local_50") (= "=") (cast_expression "(code *****)0x1" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x1"))) (; ";")) (labeled_statement "LAB_000d72d0:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" (statement_identifier "LAB_000d72d0") (: ":") (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6a44;" (goto "goto") (statement_identifier "LAB_000d6a44") (; ";")))) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" (else "else") (compound_statement "{\n      local_50 = (code *****)param_1[3];\n      if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }\n      local_50 = (code *****)0x0;\nLAB_000d69c4:\n      param_3 = param_1 + 2;\n      if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }\n      ppppppcVar15 = param_1[6];\n    }" ({ "{") (expression_statement "local_50 = (code *****)param_1[3];" (assignment_expression "local_50 = (code *****)param_1[3]" (identifier "local_50") (= "=") (cast_expression "(code *****)param_1[3]" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")))) (; ";")) (if_statement "if ((code ******)local_50 == (code ******)0x0) {\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" (if "if") (parenthesized_expression "((code ******)local_50 == (code ******)0x0)" (( "(") (binary_expression "(code ******)local_50 == (code ******)0x0" (cast_expression "(code ******)local_50" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "local_50")) (== "==") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000d6aa4:\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)0xffffffff;\n        pppppppcVar24 = (code *******)param_1[6][1][8];\n        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);\n        if (iVar23 != 7) goto LAB_000d69c4;\n        ppppppcVar15 = param_1[6];\n        pppppppcVar21 = (code *******)&DAT_00000007;\n        goto LAB_000d6a48;\n      }" ({ "{") (labeled_statement "LAB_000d6aa4:\n        param_4 = (code *******)0x0;" (statement_identifier "LAB_000d6aa4") (: ":") (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "param_3 = (code *******)0xffffffff;" (assignment_expression "param_3 = (code *******)0xffffffff" (identifier "param_3") (= "=") (cast_expression "(code *******)0xffffffff" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)param_1[6][1][8];" (assignment_expression "pppppppcVar24 = (code *******)param_1[6][1][8]" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)param_1[6][1][8]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);" (assignment_expression "iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1])" (identifier "iVar23") (= "=") (call_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + 0xc6c))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fc04 + 0xc6c)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fc04 + 0xc6c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fc04 + 0xc6c)" (( "(") (binary_expression "PTR_LAB_0018fc04 + 0xc6c" (identifier "PTR_LAB_0018fc04") (+ "+") (number_literal "0xc6c")) () ")")))) () ")")) (argument_list "(param_1[1])" (( "(") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (if_statement "if (iVar23 != 7) goto LAB_000d69c4;" (if "if") (parenthesized_expression "(iVar23 != 7)" (( "(") (binary_expression "iVar23 != 7" (identifier "iVar23") (!= "!=") (number_literal "7")) () ")")) (goto_statement "goto LAB_000d69c4;" (goto "goto") (statement_identifier "LAB_000d69c4") (; ";"))) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000007" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)&DAT_00000007" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (goto_statement "goto LAB_000d6a48;" (goto "goto") (statement_identifier "LAB_000d6a48") (; ";")) (} "}"))) (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" (identifier "local_50") (= "=") (cast_expression "(code *****)0x0" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000d69c4:\n      param_3 = param_1 + 2;" (statement_identifier "LAB_000d69c4") (: ":") (expression_statement "param_3 = param_1 + 2;" (assignment_expression "param_3 = param_1 + 2" (identifier "param_3") (= "=") (binary_expression "param_1 + 2" (identifier "param_1") (+ "+") (number_literal "2"))) (; ";"))) (if_statement "if (param_1[3] == (code ******)0x0) {\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }" (if "if") (parenthesized_expression "(param_1[3] == (code ******)0x0)" (( "(") (binary_expression "param_1[3] == (code ******)0x0" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (== "==") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pppppppcVar24 = (code *******)0x2;\n        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);\n        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;\n        param_1[3] = (code ******)0x1;\n      }" ({ "{") (expression_statement "pppppppcVar24 = (code *******)0x2;" (assignment_expression "pppppppcVar24 = (code *******)0x2" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x2" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1])" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000cb3f8(param_1[1])" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000cb3f8(param_1[1])" (identifier "FUN_000cb3f8") (argument_list "(param_1[1])" (( "(") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) () ")"))))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6a44;" (goto "goto") (statement_identifier "LAB_000d6a44") (; ";"))) (expression_statement "param_1[3] = (code ******)0x1;" (assignment_expression "param_1[3] = (code ******)0x1" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (= "=") (cast_expression "(code ******)0x1" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x1"))) (; ";")) (} "}"))) (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (} "}")))) (expression_statement "pppppcVar2 = ppppppcVar15[1];" (assignment_expression "pppppcVar2 = ppppppcVar15[1]" (identifier "pppppcVar2") (= "=") (subscript_expression "ppppppcVar15[1]" (identifier "ppppppcVar15") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "local_5c = (code ******)pppppcVar2[8];" (assignment_expression "local_5c = (code ******)pppppcVar2[8]" (identifier "local_5c") (= "=") (cast_expression "(code ******)pppppcVar2[8]" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "pppppcVar2[8]" (identifier "pppppcVar2") ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "local_40 = (code ******)param_1[1][1][8];" (assignment_expression "local_40 = (code ******)param_1[1][1][8]" (identifier "local_40") (= "=") (cast_expression "(code ******)param_1[1][1][8]" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "cVar1 = *(char *)((int)*param_1[1][1] + 5);" (assignment_expression "cVar1 = *(char *)((int)*param_1[1][1] + 5)" (identifier "cVar1") (= "=") (pointer_expression "*(char *)((int)*param_1[1][1] + 5)" (* "*") (cast_expression "(char *)((int)*param_1[1][1] + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)*param_1[1][1] + 5)" (( "(") (binary_expression "(int)*param_1[1][1] + 5" (cast_expression "(int)*param_1[1][1]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*param_1[1][1]" (* "*") (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")))) (+ "+") (number_literal "5")) () ")"))))) (; ";")) (if_statement "if (cVar1 == '\x05') {\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }\n    else {\n      pppppppcVar21 = (code *******)0x0;\n    }" (if "if") (parenthesized_expression "(cVar1 == '\x05')" (( "(") (binary_expression "cVar1 == '\x05'" (identifier "cVar1") (== "==") (char_literal "'\x05'" (' "'") (escape_sequence "\x05") (' "'"))) () ")")) (compound_statement "{\n      pppppppcVar21 = (code *******)&DAT_00000008;\n      if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }\n    }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)&DAT_00000008;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000008" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)&DAT_00000008" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) (; ";")) (if_statement "if (local_40 == local_5c) {\n        pppppppcVar21 = (code *******)0x0;\n      }" (if "if") (parenthesized_expression "(local_40 == local_5c)" (( "(") (binary_expression "local_40 == local_5c" (identifier "local_40") (== "==") (identifier "local_5c")) () ")")) (compound_statement "{\n        pppppppcVar21 = (code *******)0x0;\n      }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      pppppppcVar21 = (code *******)0x0;\n    }" (else "else") (compound_statement "{\n      pppppppcVar21 = (code *******)0x0;\n    }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (labeled_statement "LAB_000d6a70:\n    unaff_s6 = (code *******)PTR_DAT_0018f948;" (statement_identifier "LAB_000d6a70") (: ":") (expression_statement "unaff_s6 = (code *******)PTR_DAT_0018f948;" (assignment_expression "unaff_s6 = (code *******)PTR_DAT_0018f948" (identifier "unaff_s6") (= "=") (cast_expression "(code *******)PTR_DAT_0018f948" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "PTR_DAT_0018f948"))) (; ";"))) (expression_statement "unaff_s5 = (code *******)pppppcVar2[0xb];" (assignment_expression "unaff_s5 = (code *******)pppppcVar2[0xb]" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)pppppcVar2[0xb]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppcVar2[0xb]" (identifier "pppppcVar2") ([ "[") (number_literal "0xb") (] "]")))) (; ";")) (expression_statement "unaff_s8 = &local_38;" (assignment_expression "unaff_s8 = &local_38" (identifier "unaff_s8") (= "=") (pointer_expression "&local_38" (& "&") (identifier "local_38"))) (; ";")) (expression_statement "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c)" (identifier "unaff_s7") (= "=") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x491c" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x491c")) () ")")))) (; ";")) (expression_statement "pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);" (assignment_expression "pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8)" (identifier "pcVar3") (= "=") (cast_expression "(code *)(PTR_DAT_0018fbc8 + 0x6de8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0018fbc8 + 0x6de8)" (( "(") (binary_expression "PTR_DAT_0018fbc8 + 0x6de8" (identifier "PTR_DAT_0018fbc8") (+ "+") (number_literal "0x6de8")) () ")")))) (; ";")) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x49ec" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x49ec")) () ")")))) (; ";")) (for_statement "for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));\n        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }" (for "for") (( "(") (assignment_expression "unaff_s3 = (code *******)0x0" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";") (parenthesized_expression "((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2))" (( "(") (binary_expression "(int)param_2 < 0 || ((int)unaff_s3 < (int)param_2)" (binary_expression "(int)param_2 < 0" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (< "<") (number_literal "0")) (|| "||") (parenthesized_expression "((int)unaff_s3 < (int)param_2)" (( "(") (binary_expression "(int)unaff_s3 < (int)param_2" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (< "<") (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2"))) () ")"))) () ")")) (; ";") (assignment_expression "unaff_s3 = (code *******)((int)unaff_s3 + 1)" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)((int)unaff_s3 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)unaff_s3 + 1)" (( "(") (binary_expression "(int)unaff_s3 + 1" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (+ "+") (number_literal "1")) () ")")))) () ")") (compound_statement "{\n      unaff_s2 = (code *******)param_1[4];\n      if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;\n      if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }\n      param_4 = (code *******)0x2;\n      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }\n      param_1[4] = (code ******)((int)param_1[4] + 1);\n    }" ({ "{") (expression_statement "unaff_s2 = (code *******)param_1[4];" (assignment_expression "unaff_s2 = (code *******)param_1[4]" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)param_1[4]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]")))) (; ";")) (if_statement "if (unaff_s5 < unaff_s2) {\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" (if "if") (parenthesized_expression "(unaff_s5 < unaff_s2)" (( "(") (binary_expression "unaff_s5 < unaff_s2" (identifier "unaff_s5") (< "<") (identifier "unaff_s2")) () ")")) (compound_statement "{\n        if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }\n        goto LAB_000d6c94;\n      }" ({ "{") (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          param_1[9] = (code ******)unaff_s5;\n          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n          goto LAB_000d6c9c;\n        }" ({ "{") (expression_statement "param_1[9] = (code ******)unaff_s5;" (assignment_expression "param_1[9] = (code ******)unaff_s5" (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]")) (= "=") (cast_expression "(code ******)unaff_s5" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s5"))) (; ";")) (expression_statement "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));" (assignment_expression "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (subscript_expression "param_1[8]" (identifier "param_1") ([ "[") (number_literal "8") (] "]")) (= "=") (cast_expression "(code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)unaff_s5 + (1 - (int)param_1[4]))" (( "(") (binary_expression "(int)unaff_s5 + (1 - (int)param_1[4])" (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5")) (+ "+") (parenthesized_expression "(1 - (int)param_1[4])" (( "(") (binary_expression "1 - (int)param_1[4]" (number_literal "1") (- "-") (cast_expression "(int)param_1[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]")))) () ")"))) () ")")))) (; ";")) (goto_statement "goto LAB_000d6c9c;" (goto "goto") (statement_identifier "LAB_000d6c9c") (; ";")) (} "}"))) (goto_statement "goto LAB_000d6c94;" (goto "goto") (statement_identifier "LAB_000d6c94") (; ";")) (} "}"))) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6c94;" (goto "goto") (statement_identifier "LAB_000d6c94") (; ";"))) (if_statement "if (param_1[6][1][8] == (code ****)0x0) {\n        trap(7);\n      }" (if "if") (parenthesized_expression "(param_1[6][1][8] == (code ****)0x0)" (( "(") (binary_expression "param_1[6][1][8] == (code ****)0x0" (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")) (== "==") (cast_expression "(code ****)0x0" (( "(") (type_descriptor "code ****" (type_identifier "code") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        trap(7);\n      }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "param_4 = (code *******)0x2;" (assignment_expression "param_4 = (code *******)0x2" (identifier "param_4") (= "=") (cast_expression "(code *******)0x2" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x2"))) (; ";")) (if_statement "if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }" (if "if") (parenthesized_expression "(((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0))" (( "(") (binary_expression "((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2) &&\n         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)" (parenthesized_expression "((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2)" (( "(") (binary_expression "(code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=\n           unaff_s2" (cast_expression "(code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1)" (( "(") (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1" (binary_expression "*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8]" (pointer_expression "*(uint *)((int)unaff_s6 + -0x1b80)" (* "*") (cast_expression "(uint *)((int)unaff_s6 + -0x1b80)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s6 + -0x1b80)" (( "(") (binary_expression "(int)unaff_s6 + -0x1b80" (cast_expression "(int)unaff_s6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s6")) (+ "+") (number_literal "-0x1b80")) () ")")))) (/ "/") (cast_expression "(uint)param_1[6][1][8]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[6][1][8]" (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")))) (+ "+") (number_literal "1")) () ")"))) (!= "!=") (identifier "unaff_s2")) () ")")) (&& "&&") (parenthesized_expression "(pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)" (( "(") (comma_expression "pppppppcVar24 = unaff_s2, param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar24 = unaff_s2" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s2")) (, ",") (comma_expression "param_3 = unaff_s8,\n         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "param_3 = unaff_s8" (identifier "param_3") (= "=") (identifier "unaff_s8")) (, ",") (comma_expression "pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)(*unaff_s7)(local_60)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*unaff_s7)(local_60)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*unaff_s7)(local_60)" (parenthesized_expression "(*unaff_s7)" (( "(") (pointer_expression "*unaff_s7" (* "*") (identifier "unaff_s7")) () ")")) (argument_list "(local_60)" (( "(") (identifier "local_60") () ")"))))) (, ",") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0")))))) () ")"))) () ")")) (compound_statement "{\n        param_4 = (code *******)0x0;\n        param_3 = (code *******)local_38[1];\n        pppppppcVar24 = unaff_s2;\n        pppppppcVar21 = (code *******)(*pcVar3)(param_1);\n        (*pcVar4)(local_38);\n      }" ({ "{") (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "param_3 = (code *******)local_38[1];" (assignment_expression "param_3 = (code *******)local_38[1]" (identifier "param_3") (= "=") (cast_expression "(code *******)local_38[1]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_38[1]" (identifier "local_38") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pppppppcVar24 = unaff_s2;" (assignment_expression "pppppppcVar24 = unaff_s2" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "pppppppcVar21 = (code *******)(*pcVar3)(param_1);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar3)(param_1)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*pcVar3)(param_1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*pcVar3)(param_1)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))))) (; ";")) (expression_statement "(*pcVar4)(local_38);" (call_expression "(*pcVar4)(local_38)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(local_38)" (( "(") (identifier "local_38") () ")"))) (; ";")) (} "}"))) (expression_statement "param_1[4] = (code ******)((int)param_1[4] + 1);" (assignment_expression "param_1[4] = (code ******)((int)param_1[4] + 1)" (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]")) (= "=") (cast_expression "(code ******)((int)param_1[4] + 1)" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)param_1[4] + 1)" (( "(") (binary_expression "(int)param_1[4] + 1" (cast_expression "(int)param_1[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}"))) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      param_1[9] = (code ******)unaff_s5;\n      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));\n      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;\n      if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }\n      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;\n      goto LAB_000d6e5c;\n    }" ({ "{") (expression_statement "param_1[9] = (code ******)unaff_s5;" (assignment_expression "param_1[9] = (code ******)unaff_s5" (subscript_expression "param_1[9]" (identifier "param_1") ([ "[") (number_literal "9") (] "]")) (= "=") (cast_expression "(code ******)unaff_s5" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s5"))) (; ";")) (expression_statement "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));" (assignment_expression "param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (subscript_expression "param_1[8]" (identifier "param_1") ([ "[") (number_literal "8") (] "]")) (= "=") (cast_expression "(code ******)((int)unaff_s5 + (1 - (int)param_1[4]))" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)unaff_s5 + (1 - (int)param_1[4]))" (( "(") (binary_expression "(int)unaff_s5 + (1 - (int)param_1[4])" (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5")) (+ "+") (parenthesized_expression "(1 - (int)param_1[4])" (( "(") (binary_expression "1 - (int)param_1[4]" (number_literal "1") (- "-") (cast_expression "(int)param_1[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]")))) () ")"))) () ")")))) (; ";")) (if_statement "if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;" (if "if") (parenthesized_expression "(unaff_s5 < param_1[4])" (( "(") (binary_expression "unaff_s5 < param_1[4]" (identifier "unaff_s5") (< "<") (subscript_expression "param_1[4]" (identifier "param_1") ([ "[") (number_literal "4") (] "]"))) () ")")) (goto_statement "goto LAB_000d6c9c;" (goto "goto") (statement_identifier "LAB_000d6c9c") (; ";"))) (if_statement "if (param_1[10] == (code ******)0x0) {\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }" (if "if") (parenthesized_expression "(param_1[10] == (code ******)0x0)" (( "(") (binary_expression "param_1[10] == (code ******)0x0" (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]")) (== "==") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        ppppcVar5 = *param_1[6][1];\n        param_1[0xb] = (code ******)ppppcVar5[0x16];\n        ppppcVar5[0x16] = (code ***)param_1;\n        param_1[10] = (code ******)0x1;\n      }" ({ "{") (expression_statement "ppppcVar5 = *param_1[6][1];" (assignment_expression "ppppcVar5 = *param_1[6][1]" (identifier "ppppcVar5") (= "=") (pointer_expression "*param_1[6][1]" (* "*") (subscript_expression "param_1[6][1]" (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "param_1[0xb] = (code ******)ppppcVar5[0x16];" (assignment_expression "param_1[0xb] = (code ******)ppppcVar5[0x16]" (subscript_expression "param_1[0xb]" (identifier "param_1") ([ "[") (number_literal "0xb") (] "]")) (= "=") (cast_expression "(code ******)ppppcVar5[0x16]" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppcVar5[0x16]" (identifier "ppppcVar5") ([ "[") (number_literal "0x16") (] "]")))) (; ";")) (expression_statement "ppppcVar5[0x16] = (code ***)param_1;" (assignment_expression "ppppcVar5[0x16] = (code ***)param_1" (subscript_expression "ppppcVar5[0x16]" (identifier "ppppcVar5") ([ "[") (number_literal "0x16") (] "]")) (= "=") (cast_expression "(code ***)param_1" (( "(") (type_descriptor "code ***" (type_identifier "code") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (identifier "param_1"))) (; ";")) (expression_statement "param_1[10] = (code ******)0x1;" (assignment_expression "param_1[10] = (code ******)0x1" (subscript_expression "param_1[10]" (identifier "param_1") ([ "[") (number_literal "10") (] "]")) (= "=") (cast_expression "(code ******)0x1" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x1"))) (; ";")) (} "}"))) (if_statement "if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;" (if "if") (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" (( "(") (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "local_50")) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6c34;" (goto "goto") (statement_identifier "LAB_000d6c34") (; ";"))) (goto_statement "goto LAB_000d6e5c;" (goto "goto") (statement_identifier "LAB_000d6e5c") (; ";")) (} "}"))) (labeled_statement "LAB_000d6c94:\n    if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" (statement_identifier "LAB_000d6c94") (: ":") (if_statement "if (pppppppcVar21 == (code *******)0x65) {\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }\n    else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x65)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x65" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x65" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x65"))) () ")")) (compound_statement "{\nLAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }\n      param_3 = (code *******)((int)param_1[2] + 1);\n      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }\n      if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;\n      pcVar3 = (code *)PTR_DAT_0018f948;\n      if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }\n      if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }\n      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);\n      local_4c[6] = (code **)unaff_s5;\n      param_3 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\nLAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      pppppppcVar24 = (code *******)0x0;\n      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n      if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }\n      pppppppcVar21 = (code *******)0x65;\n    }" ({ "{") (labeled_statement "LAB_000d6c9c:\n      if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" (statement_identifier "LAB_000d6c9c") (: ":") (if_statement "if (unaff_s5 == (code *******)0x0) {\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" (if "if") (parenthesized_expression "(unaff_s5 == (code *******)0x0)" (( "(") (binary_expression "unaff_s5 == (code *******)0x0" (identifier "unaff_s5") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        unaff_s2 = (code *******)param_1[1];\n        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);\n        unaff_s2[1][0xb] = (code *****)0x0;\n        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);\n        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);\n        if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }\n      }" ({ "{") (expression_statement "unaff_s2 = (code *******)param_1[1];" (assignment_expression "unaff_s2 = (code *******)param_1[1]" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)param_1[1]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fbd0 + 0x40f0))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fbd0 + 0x40f0)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fbd0 + 0x40f0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fbd0 + 0x40f0)" (( "(") (binary_expression "PTR_LAB_0018fbd0 + 0x40f0" (identifier "PTR_LAB_0018fbd0") (+ "+") (number_literal "0x40f0")) () ")")))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";")) (expression_statement "unaff_s2[1][0xb] = (code *****)0x0;" (assignment_expression "unaff_s2[1][0xb] = (code *****)0x0" (subscript_expression "unaff_s2[1][0xb]" (subscript_expression "unaff_s2[1]" (identifier "unaff_s2") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "0xb") (] "]")) (= "=") (cast_expression "(code *****)0x0" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1])" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000cb270(unaff_s2[1])" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000cb270(unaff_s2[1])" (identifier "FUN_000cb270") (argument_list "(unaff_s2[1])" (( "(") (subscript_expression "unaff_s2[1]" (identifier "unaff_s2") ([ "[") (number_literal "1") (] "]")) () ")"))))) (; ";")) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x524c" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x524c")) () ")")))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";")) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          unaff_s5 = (code *******)0x1;\n        }\n        else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          unaff_s5 = (code *******)0x1;\n        }" ({ "{") (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (} "}")) (else_clause "else {\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" (else "else") (compound_statement "{\n          unaff_s5 = (code *******)0x1;\n          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;\n        }" ({ "{") (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x65)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x65" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x65" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x65"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";"))) (} "}")))) (} "}")))) (expression_statement "param_3 = (code *******)((int)param_1[2] + 1);" (assignment_expression "param_3 = (code *******)((int)param_1[2] + 1)" (identifier "param_3") (= "=") (cast_expression "(code *******)((int)param_1[2] + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1[2] + 1)" (( "(") (binary_expression "(int)param_1[2] + 1" (cast_expression "(int)param_1[2]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "param_1[2]" (identifier "param_1") ([ "[") (number_literal "2") (] "]"))) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000cbf70(param_1[1],1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000cbf70(param_1[1],1)" (identifier "FUN_000cbf70") (argument_list "(param_1[1],1)" (( "(") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";"))) (if_statement "if (*param_1 != (code ******)0x0) {\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" (if "if") (parenthesized_expression "(*param_1 != (code ******)0x0)" (( "(") (binary_expression "*param_1 != (code ******)0x0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        (*(code *)(PTR_LAB_0018fc04 + -0x824))();\n      }" ({ "{") (expression_statement "(*(code *)(PTR_LAB_0018fc04 + -0x824))();" (call_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))()" (parenthesized_expression "(*(code *)(PTR_LAB_0018fc04 + -0x824))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fc04 + -0x824)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fc04 + -0x824)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fc04 + -0x824)" (( "(") (binary_expression "PTR_LAB_0018fc04 + -0x824" (identifier "PTR_LAB_0018fc04") (+ "+") (number_literal "-0x824")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (if_statement "if ((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;" (if "if") (parenthesized_expression "((cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0))" (( "(") (binary_expression "(cVar1 == '\x05') &&\n         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)" (parenthesized_expression "(cVar1 == '\x05')" (( "(") (binary_expression "cVar1 == '\x05'" (identifier "cVar1") (== "==") (char_literal "'\x05'" (' "'") (escape_sequence "\x05") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0)" (( "(") (comma_expression "pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),\n         pppppppcVar21 != (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000cc064(param_1[1],2)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000cc064(param_1[1],2)" (identifier "FUN_000cc064") (argument_list "(param_1[1],2)" (( "(") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "2") () ")"))))) (, ",") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0")))) () ")"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";"))) (expression_statement "pcVar3 = (code *)PTR_DAT_0018f948;" (assignment_expression "pcVar3 = (code *)PTR_DAT_0018f948" (identifier "pcVar3") (= "=") (cast_expression "(code *)PTR_DAT_0018f948" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_DAT_0018f948"))) (; ";")) (if_statement "if ((int)local_5c < (int)local_40) {\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" (if "if") (parenthesized_expression "((int)local_5c < (int)local_40)" (( "(") (binary_expression "(int)local_5c < (int)local_40" (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c")) (< "<") (cast_expression "(int)local_40" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_40"))) () ")")) (compound_statement "{\n        if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }\n        iVar23 = (int)local_40 / (int)local_5c;\n        if (iVar23 == 0) {\n          trap(7);\n        }\n        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);\n        if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }\n        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }\n        param_2 = (code *******)((int)local_5c >> 0x1f);\n        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));\n        pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));\n        pppcVar12 = (code ***)local_4c[0xf];\n        unaff_s5 = (code *******)local_4c[6];\n        param_4 = pppppppcVar25;\n        unaff_s6 = (code *******)local_5c;\n        unaff_s7 = pcVar3;\n        if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }\n        param_3 = (code *******)0x1;\n        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);\n        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s5 = (code *******)((int)local_40 >> 0x1f);\n        if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }\n        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));\n        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);\n        if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }\n        goto LAB_000d6e48;\n      }" ({ "{") (if_statement "if ((code *******)local_5c == (code *******)0x0) {\n          trap(7);\n        }" (if "if") (parenthesized_expression "((code *******)local_5c == (code *******)0x0)" (( "(") (binary_expression "(code *******)local_5c == (code *******)0x0" (cast_expression "(code *******)local_5c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "local_5c")) (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          trap(7);\n        }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar23 = (int)local_40 / (int)local_5c;" (assignment_expression "iVar23 = (int)local_40 / (int)local_5c" (identifier "iVar23") (= "=") (binary_expression "(int)local_40 / (int)local_5c" (cast_expression "(int)local_40" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_40")) (/ "/") (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c")))) (; ";")) (if_statement "if (iVar23 == 0) {\n          trap(7);\n        }" (if "if") (parenthesized_expression "(iVar23 == 0)" (( "(") (binary_expression "iVar23 == 0" (identifier "iVar23") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          trap(7);\n        }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);" (assignment_expression "pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)((int)unaff_s5 + iVar23 + -1) / iVar23)" (( "(") (binary_expression "(int)((int)unaff_s5 + iVar23 + -1) / iVar23" (cast_expression "(int)((int)unaff_s5 + iVar23 + -1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((int)unaff_s5 + iVar23 + -1)" (( "(") (binary_expression "(int)unaff_s5 + iVar23 + -1" (binary_expression "(int)unaff_s5 + iVar23" (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5")) (+ "+") (identifier "iVar23")) (+ "+") (number_literal "-1")) () ")"))) (/ "/") (identifier "iVar23")) () ")")))) (; ";")) (if_statement "if (param_1[1][1][8] == (code ****)0x0) {\n          trap(7);\n        }" (if "if") (parenthesized_expression "(param_1[1][1][8] == (code ****)0x0)" (( "(") (binary_expression "param_1[1][1][8] == (code ****)0x0" (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")) (== "==") (cast_expression "(code ****)0x0" (( "(") (type_descriptor "code ****" (type_identifier "code") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          trap(7);\n        }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (if_statement "if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24) {\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }" (if "if") (parenthesized_expression "((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24)" (( "(") (binary_expression "(code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==\n            pppppppcVar24" (cast_expression "(code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1)" (( "(") (binary_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1" (binary_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8]" (pointer_expression "*(uint *)(PTR_DAT_0018f948 + -0x1b80)" (* "*") (cast_expression "(uint *)(PTR_DAT_0018f948 + -0x1b80)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" (( "(") (binary_expression "PTR_DAT_0018f948 + -0x1b80" (identifier "PTR_DAT_0018f948") (+ "+") (number_literal "-0x1b80")) () ")")))) (/ "/") (cast_expression "(uint)param_1[1][1][8]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")))) (+ "+") (number_literal "1")) () ")"))) (== "==") (identifier "pppppppcVar24")) () ")")) (compound_statement "{\n          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);\n        }" ({ "{") (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1)" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)((int)pppppppcVar24 + -1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppcVar24 + -1)" (( "(") (binary_expression "(int)pppppppcVar24 + -1" (cast_expression "(int)pppppppcVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar24")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (} "}"))) (expression_statement "param_2 = (code *******)((int)local_5c >> 0x1f);" (assignment_expression "param_2 = (code *******)((int)local_5c >> 0x1f)" (identifier "param_2") (= "=") (cast_expression "(code *******)((int)local_5c >> 0x1f)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_5c >> 0x1f)" (( "(") (binary_expression "(int)local_5c >> 0x1f" (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (expression_statement "pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));" (assignment_expression "pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c))" (identifier "pppppppcVar25") (= "=") (cast_expression "(code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c))" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(local_5c))" (( "(") (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c)" (call_expression "ZEXT48(unaff_s5)" (identifier "ZEXT48") (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))) (* "*") (call_expression "ZEXT48(local_5c)" (identifier "ZEXT48") (argument_list "(local_5c)" (( "(") (identifier "local_5c") () ")")))) () ")")))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));" (assignment_expression "pppppppcVar6 = (code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)\n                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20))" (( "(") (binary_expression "(int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +\n                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" (binary_expression "(int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c" (binary_expression "(int)param_2 * (int)unaff_s5" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (* "*") (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5"))) (+ "+") (binary_expression "((int)unaff_s5 >> 0x1f) * (int)local_5c" (parenthesized_expression "((int)unaff_s5 >> 0x1f)" (( "(") (binary_expression "(int)unaff_s5 >> 0x1f" (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5")) (>> ">>") (number_literal "0x1f")) () ")")) (* "*") (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c")))) (+ "+") (cast_expression "(int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20)" (( "(") (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20" (binary_expression "ZEXT48(unaff_s5) * ZEXT48(local_5c)" (call_expression "ZEXT48(unaff_s5)" (identifier "ZEXT48") (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))) (* "*") (call_expression "ZEXT48(local_5c)" (identifier "ZEXT48") (argument_list "(local_5c)" (( "(") (identifier "local_5c") () ")")))) (>> ">>") (number_literal "0x20")) () ")")))) () ")")))) (; ";")) (expression_statement "pppcVar12 = (code ***)local_4c[0xf];" (assignment_expression "pppcVar12 = (code ***)local_4c[0xf]" (identifier "pppcVar12") (= "=") (cast_expression "(code ***)local_4c[0xf]" (( "(") (type_descriptor "code ***" (type_identifier "code") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (subscript_expression "local_4c[0xf]" (identifier "local_4c") ([ "[") (number_literal "0xf") (] "]")))) (; ";")) (expression_statement "unaff_s5 = (code *******)local_4c[6];" (assignment_expression "unaff_s5 = (code *******)local_4c[6]" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)local_4c[6]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "local_4c[6]" (identifier "local_4c") ([ "[") (number_literal "6") (] "]")))) (; ";")) (expression_statement "param_4 = pppppppcVar25;" (assignment_expression "param_4 = pppppppcVar25" (identifier "param_4") (= "=") (identifier "pppppppcVar25")) (; ";")) (expression_statement "unaff_s6 = (code *******)local_5c;" (assignment_expression "unaff_s6 = (code *******)local_5c" (identifier "unaff_s6") (= "=") (cast_expression "(code *******)local_5c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "local_5c"))) (; ";")) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" (identifier "unaff_s7") (= "=") (identifier "pcVar3")) (; ";")) (if_statement "if (pppppppcVar24 <= unaff_s5) {\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }" (if "if") (parenthesized_expression "(pppppppcVar24 <= unaff_s5)" (( "(") (binary_expression "pppppppcVar24 <= unaff_s5" (identifier "pppppppcVar24") (<= "<=") (identifier "unaff_s5")) () ")")) (compound_statement "{\n          unaff_s3 = &local_38;\n          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);\n          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);\n          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);\n          do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);\n        }" ({ "{") (expression_statement "unaff_s3 = &local_38;" (assignment_expression "unaff_s3 = &local_38" (identifier "unaff_s3") (= "=") (pointer_expression "&local_38" (& "&") (identifier "local_38"))) (; ";")) (expression_statement "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c)" (identifier "unaff_s8") (= "=") (cast_expression "(code *******)(PTR_LAB_0018fb58 + 0x491c)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x491c" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x491c")) () ")")))) (; ";")) (expression_statement "pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);" (assignment_expression "pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(PTR_DAT_0018fbc8 + 0x6d30)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0018fbc8 + 0x6d30)" (( "(") (binary_expression "PTR_DAT_0018fbc8 + 0x6d30" (identifier "PTR_DAT_0018fbc8") (+ "+") (number_literal "0x6d30")) () ")")))) (; ";")) (expression_statement "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec)" (identifier "pcVar7") (= "=") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x49ec" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x49ec")) () ")")))) (; ";")) (do_statement "do {\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          } while (pppppppcVar24 <= unaff_s5);" (do "do") (compound_statement "{\n            if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }\n            param_4 = (code *******)0x0;\n            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }\n            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n          }" ({ "{") (if_statement "if (param_1[1][1][8] == (code ****)0x0) {\n              trap(7);\n            }" (if "if") (parenthesized_expression "(param_1[1][1][8] == (code ****)0x0)" (( "(") (binary_expression "param_1[1][1][8] == (code ****)0x0" (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")) (== "==") (cast_expression "(code ****)0x0" (( "(") (type_descriptor "code ****" (type_identifier "code") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              trap(7);\n            }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24) {\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }" (if "if") (parenthesized_expression "((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24)" (( "(") (binary_expression "(code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=\n                pppppppcVar24" (cast_expression "(code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1)" (( "(") (binary_expression "*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1" (binary_expression "*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8]" (pointer_expression "*(uint *)(pcVar3 + -0x1b80)" (* "*") (cast_expression "(uint *)(pcVar3 + -0x1b80)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + -0x1b80)" (( "(") (binary_expression "pcVar3 + -0x1b80" (identifier "pcVar3") (+ "+") (number_literal "-0x1b80")) () ")")))) (/ "/") (cast_expression "(uint)param_1[1][1][8]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")))) (+ "+") (number_literal "1")) () ")"))) (!= "!=") (identifier "pppppppcVar24")) () ")")) (compound_statement "{\n              param_3 = unaff_s3;\n              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);\n              if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }\n              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n            }" ({ "{") (expression_statement "param_3 = unaff_s3;" (assignment_expression "param_3 = unaff_s3" (identifier "param_3") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)unaff_s8)(local_4c,pppppppcVar24)" (parenthesized_expression "(*(code *)unaff_s8)" (( "(") (pointer_expression "*(code *)unaff_s8" (* "*") (cast_expression "(code *)unaff_s8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s8"))) () ")")) (argument_list "(local_4c,pppppppcVar24)" (( "(") (identifier "local_4c") (, ",") (identifier "pppppppcVar24") () ")"))))) (; ";")) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                pppppppcVar21 = (code *******)(*pcVar4)(local_38);\n                (*pcVar7)(local_38);\n              }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)(*pcVar4)(local_38);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar4)(local_38)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*pcVar4)(local_38)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*pcVar4)(local_38)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(local_38)" (( "(") (identifier "local_38") () ")"))))) (; ";")) (expression_statement "(*pcVar7)(local_38);" (call_expression "(*pcVar7)(local_38)" (parenthesized_expression "(*pcVar7)" (( "(") (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) () ")")) (argument_list "(local_38)" (( "(") (identifier "local_38") () ")"))) (; ";")) (} "}"))) (expression_statement "unaff_s2 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "unaff_s2 = (code *******)((int)pppppppcVar24 + 1)" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)((int)pppppppcVar24 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppcVar24 + 1)" (( "(") (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar24")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";"))) (} "}"))) (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1)" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)((int)pppppppcVar24 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppcVar24 + 1)" (( "(") (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar24")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppcVar24 <= unaff_s5)" (( "(") (binary_expression "pppppppcVar24 <= unaff_s5" (identifier "pppppppcVar24") (<= "<=") (identifier "unaff_s5")) () ")")) (; ";")) (} "}"))) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" (identifier "param_3") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000d5e38(local_4c,0)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000d5e38(local_4c,0)" (identifier "FUN_000d5e38") (argument_list "(local_4c,0)" (( "(") (identifier "local_4c") (, ",") (number_literal "0") () ")"))))) (; ";")) (expression_statement "local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));" (assignment_expression "local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" (identifier "local_40") (= "=") (cast_expression "(code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80))" (( "(") (binary_expression "(int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80)" (cast_expression "(int)local_40" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_40")) (+ "+") (pointer_expression "*(int *)(PTR_DAT_0018f948 + -0x1b80)" (* "*") (cast_expression "(int *)(PTR_DAT_0018f948 + -0x1b80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" (( "(") (binary_expression "PTR_DAT_0018f948 + -0x1b80" (identifier "PTR_DAT_0018f948") (+ "+") (number_literal "-0x1b80")) () ")"))))) () ")")))) (; ";")) (expression_statement "unaff_s5 = (code *******)((int)local_40 >> 0x1f);" (assignment_expression "unaff_s5 = (code *******)((int)local_40 >> 0x1f)" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)((int)local_40 >> 0x1f)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_40 >> 0x1f)" (( "(") (binary_expression "(int)local_40 >> 0x1f" (cast_expression "(int)local_40" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_40")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (if_statement "if (((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }" (if "if") (parenthesized_expression "(((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40))))" (( "(") (binary_expression "((int)pppppppcVar6 < (int)unaff_s5) ||\n           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))" (parenthesized_expression "((int)pppppppcVar6 < (int)unaff_s5)" (( "(") (binary_expression "(int)pppppppcVar6 < (int)unaff_s5" (cast_expression "(int)pppppppcVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar6")) (< "<") (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5"))) () ")")) (|| "||") (parenthesized_expression "((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))" (( "(") (parenthesized_expression "(unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40))" (( "(") (binary_expression "unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)" (binary_expression "unaff_s5 == pppppppcVar6" (identifier "unaff_s5") (== "==") (identifier "pppppppcVar6")) (&& "&&") (parenthesized_expression "(pppppppcVar25 < local_40)" (( "(") (binary_expression "pppppppcVar25 < local_40" (identifier "pppppppcVar25") (< "<") (identifier "local_40")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n          unaff_s5 = pppppppcVar6;\n          local_40 = (code ******)pppppppcVar25;\n        }" ({ "{") (expression_statement "unaff_s5 = pppppppcVar6;" (assignment_expression "unaff_s5 = pppppppcVar6" (identifier "unaff_s5") (= "=") (identifier "pppppppcVar6")) (; ";")) (expression_statement "local_40 = (code ******)pppppppcVar25;" (assignment_expression "local_40 = (code ******)pppppppcVar25" (identifier "local_40") (= "=") (cast_expression "(code ******)pppppppcVar25" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar25"))) (; ";")) (} "}"))) (expression_statement "unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));" (assignment_expression "unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80))" (( "(") (binary_expression "(int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80)" (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c")) (+ "+") (pointer_expression "*(int *)(PTR_DAT_0018f948 + -0x1b80)" (* "*") (cast_expression "(int *)(PTR_DAT_0018f948 + -0x1b80)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_0018f948 + -0x1b80)" (( "(") (binary_expression "PTR_DAT_0018f948 + -0x1b80" (identifier "PTR_DAT_0018f948") (+ "+") (number_literal "-0x1b80")) () ")"))))) () ")")))) (; ";")) (expression_statement "unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);" (assignment_expression "unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f)" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)((int)unaff_s3 >> 0x1f)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)unaff_s3 >> 0x1f)" (( "(") (binary_expression "(int)unaff_s3 >> 0x1f" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (>> ">>") (number_literal "0x1f")) () ")")))) (; ";")) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }\n          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);\n          unaff_s7 = pcVar3;\n          if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }\n        }" ({ "{") (if_statement "if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))\n          {\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }" (if "if") (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))" (( "(") (binary_expression "((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" (( "(") (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s2")) (< "<") (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5"))) () ")")) (|| "||") (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (( "(") (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < local_40))" (( "(") (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < local_40)" (binary_expression "unaff_s5 == unaff_s2" (identifier "unaff_s5") (== "==") (identifier "unaff_s2")) (&& "&&") (parenthesized_expression "(unaff_s3 < local_40)" (( "(") (binary_expression "unaff_s3 < local_40" (identifier "unaff_s3") (< "<") (identifier "local_40")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);\n            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);\n            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);\n            pppppppcVar24 = unaff_s3;\n            do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));\n          }" ({ "{") (expression_statement "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);" (assignment_expression "pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c)" (identifier "pcVar3") (= "=") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x491c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x491c)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x491c" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x491c")) () ")")))) (; ";")) (expression_statement "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);" (assignment_expression "pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0)" (identifier "pcVar4") (= "=") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x9e0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x9e0)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x9e0" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x9e0")) () ")")))) (; ";")) (expression_statement "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);" (assignment_expression "unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec)" (identifier "unaff_s8") (= "=") (cast_expression "(code *******)(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x49ec" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x49ec")) () ")")))) (; ";")) (expression_statement "pppppppcVar24 = unaff_s3;" (assignment_expression "pppppppcVar24 = unaff_s3" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s3")) (; ";")) (do_statement "do {\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            } while (((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));" (do "do") (compound_statement "{\n              local_38 = (code ******)0x0;\n              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);\n              param_4 = (code *******)0x0;\n              param_3 = &local_38;\n              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);\n              unaff_s7 = pcVar3;\n              if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }\n              param_3 = (code *******)local_5c;\n              local_70 = (code ******)unaff_s2;\n              local_6c = (code ******)pppppppcVar24;\n              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);\n              (*(code *)unaff_s8)(local_38);\n              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);\n              unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));\n              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;\n              pppppppcVar24 = unaff_s3;\n            }" ({ "{") (expression_statement "local_38 = (code ******)0x0;" (assignment_expression "local_38 = (code ******)0x0" (identifier "local_38") (= "=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "(*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);" (call_expression "(*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c)" (parenthesized_expression "(*(code *)PTR_FUN_0018fa10)" (( "(") (pointer_expression "*(code *)PTR_FUN_0018fa10" (* "*") (cast_expression "(code *)PTR_FUN_0018fa10" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0018fa10"))) () ")")) (argument_list "(unaff_s2,pppppppcVar24,param_2,local_5c)" (( "(") (identifier "unaff_s2") (, ",") (identifier "pppppppcVar24") (, ",") (identifier "param_2") (, ",") (identifier "local_5c") () ")"))) (; ";")) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "param_3 = &local_38;" (assignment_expression "param_3 = &local_38" (identifier "param_3") (= "=") (pointer_expression "&local_38" (& "&") (identifier "local_38"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*pcVar3)(local_60,extraout_v1 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*pcVar3)(local_60,extraout_v1 + 1)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(local_60,extraout_v1 + 1)" (( "(") (identifier "local_60") (, ",") (binary_expression "extraout_v1 + 1" (identifier "extraout_v1") (+ "+") (number_literal "1")) () ")"))))) (; ";")) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" (identifier "unaff_s7") (= "=") (identifier "pcVar3")) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) {\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);\n                unaff_s3 = pppppppcVar24;\n                goto LAB_000d6e48;\n              }" ({ "{") (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x49ec))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x49ec)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x49ec)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x49ec" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x49ec")) () ")")))) () ")")) (argument_list "(local_38)" (( "(") (identifier "local_38") () ")"))) (; ";")) (expression_statement "unaff_s3 = pppppppcVar24;" (assignment_expression "unaff_s3 = pppppppcVar24" (identifier "unaff_s3") (= "=") (identifier "pppppppcVar24")) (; ";")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";")) (} "}"))) (expression_statement "param_3 = (code *******)local_5c;" (assignment_expression "param_3 = (code *******)local_5c" (identifier "param_3") (= "=") (cast_expression "(code *******)local_5c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "local_5c"))) (; ";")) (expression_statement "local_70 = (code ******)unaff_s2;" (assignment_expression "local_70 = (code ******)unaff_s2" (identifier "local_70") (= "=") (cast_expression "(code ******)unaff_s2" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s2"))) (; ";")) (expression_statement "local_6c = (code ******)pppppppcVar24;" (assignment_expression "local_6c = (code ******)pppppppcVar24" (identifier "local_6c") (= "=") (cast_expression "(code ******)pppppppcVar24" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar24"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);" (assignment_expression "pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1])" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*pcVar4)(pppcVar12,local_38[1])" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*pcVar4)(pppcVar12,local_38[1])" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(pppcVar12,local_38[1])" (( "(") (identifier "pppcVar12") (, ",") (subscript_expression "local_38[1]" (identifier "local_38") ([ "[") (number_literal "1") (] "]")) () ")"))))) (; ";")) (expression_statement "(*(code *)unaff_s8)(local_38);" (call_expression "(*(code *)unaff_s8)(local_38)" (parenthesized_expression "(*(code *)unaff_s8)" (( "(") (pointer_expression "*(code *)unaff_s8" (* "*") (cast_expression "(code *)unaff_s8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "unaff_s8"))) () ")")) (argument_list "(local_38)" (( "(") (identifier "local_38") () ")"))) (; ";")) (expression_statement "unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);" (assignment_expression "unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c)" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)((int)pppppppcVar24 + (int)local_5c)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppcVar24 + (int)local_5c)" (( "(") (binary_expression "(int)pppppppcVar24 + (int)local_5c" (cast_expression "(int)pppppppcVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar24")) (+ "+") (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c"))) () ")")))) (; ";")) (expression_statement "unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));" (assignment_expression "unaff_s2 = (code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)\n                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24))" (( "(") (binary_expression "(code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24)" (cast_expression "(code *)((int)unaff_s2 + (int)param_2)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s2 + (int)param_2)" (( "(") (binary_expression "(int)unaff_s2 + (int)param_2" (cast_expression "(int)unaff_s2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s2")) (+ "+") (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2"))) () ")"))) (+ "+") (parenthesized_expression "(unaff_s3 < pppppppcVar24)" (( "(") (binary_expression "unaff_s3 < pppppppcVar24" (identifier "unaff_s3") (< "<") (identifier "pppppppcVar24")) () ")"))) () ")")))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";"))) (expression_statement "pppppppcVar24 = unaff_s3;" (assignment_expression "pppppppcVar24 = unaff_s3" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s3")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))" (( "(") (binary_expression "((int)unaff_s2 < (int)unaff_s5) ||\n                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (parenthesized_expression "((int)unaff_s2 < (int)unaff_s5)" (( "(") (binary_expression "(int)unaff_s2 < (int)unaff_s5" (cast_expression "(int)unaff_s2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s2")) (< "<") (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5"))) () ")")) (|| "||") (parenthesized_expression "((unaff_s5 == unaff_s2 && (unaff_s3 < local_40)))" (( "(") (parenthesized_expression "(unaff_s5 == unaff_s2 && (unaff_s3 < local_40))" (( "(") (binary_expression "unaff_s5 == unaff_s2 && (unaff_s3 < local_40)" (binary_expression "unaff_s5 == unaff_s2" (identifier "unaff_s5") (== "==") (identifier "unaff_s2")) (&& "&&") (parenthesized_expression "(unaff_s3 < local_40)" (( "(") (binary_expression "unaff_s3 < local_40" (identifier "unaff_s3") (< "<") (identifier "local_40")) () ")"))) () ")")) () ")"))) () ")")) (; ";")) (} "}"))) (expression_statement "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa6c))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa6c)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa6c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa6c)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0xa6c" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0xa6c")) () ")")))) () ")")) (argument_list "(pppcVar12,&local_38)" (( "(") (identifier "pppcVar12") (, ",") (pointer_expression "&local_38" (& "&") (identifier "local_38")) () ")"))))) (; ";")) (expression_statement "unaff_s7 = pcVar3;" (assignment_expression "unaff_s7 = pcVar3" (identifier "unaff_s7") (= "=") (identifier "pcVar3")) (; ";")) (if_statement "if ((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             ) {\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }" (if "if") (parenthesized_expression "((pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))\n             )" (( "(") (binary_expression "(pppppppcVar21 == (code *******)0x0) &&\n             ((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))" (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "((((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))" (( "(") (parenthesized_expression "(((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0))" (( "(") (binary_expression "((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||\n              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)" (parenthesized_expression "((int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25))))" (( "(") (binary_expression "(int)local_38 <= (int)pppppppcVar6 &&\n               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))" (binary_expression "(int)local_38 <= (int)pppppppcVar6" (cast_expression "(int)local_38" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_38")) (<= "<=") (cast_expression "(int)pppppppcVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar6"))) (&& "&&") (parenthesized_expression "(((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))" (( "(") (parenthesized_expression "((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25))" (( "(") (binary_expression "(code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)" (binary_expression "(code *******)local_38 != pppppppcVar6" (cast_expression "(code *******)local_38" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "local_38")) (!= "!=") (identifier "pppppppcVar6")) (|| "||") (parenthesized_expression "(local_34 <= pppppppcVar25)" (( "(") (binary_expression "local_34 <= pppppppcVar25" (identifier "local_34") (<= "<=") (identifier "pppppppcVar25")) () ")"))) () ")")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)" (( "(") (comma_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),\n              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0xa14))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0xa14)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0xa14)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0xa14)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0xa14" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0xa14")) () ")")))) () ")")) (argument_list "(pppcVar12)" (( "(") (identifier "pppcVar12") () ")"))))) (, ",") (comma_expression "param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "param_3 = pppppppcVar6" (identifier "param_3") (= "=") (identifier "pppppppcVar6")) (, ",") (comma_expression "param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0" (assignment_expression "param_4 = pppppppcVar25" (identifier "param_4") (= "=") (identifier "pppppppcVar25")) (, ",") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0")))))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);\n            goto LAB_000d6f68;\n          }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0)" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x4a30))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x4a30)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x4a30)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x4a30)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x4a30" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x4a30")) () ")")))) () ")")) (argument_list "(local_4c,0)" (( "(") (identifier "local_4c") (, ",") (number_literal "0") () ")"))))) (; ";")) (goto_statement "goto LAB_000d6f68;" (goto "goto") (statement_identifier "LAB_000d6f68") (; ";")) (} "}"))) (} "}"))) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";")) (} "}"))) (if_statement "if ((code *******)local_40 == (code *******)0x0) {\n        trap(7);\n      }" (if "if") (parenthesized_expression "((code *******)local_40 == (code *******)0x0)" (( "(") (binary_expression "(code *******)local_40 == (code *******)0x0" (cast_expression "(code *******)local_40" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "local_40")) (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        trap(7);\n      }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);" (assignment_expression "unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5)" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(((int)local_5c / (int)local_40) * (int)unaff_s5)" (( "(") (binary_expression "((int)local_5c / (int)local_40) * (int)unaff_s5" (parenthesized_expression "((int)local_5c / (int)local_40)" (( "(") (binary_expression "(int)local_5c / (int)local_40" (cast_expression "(int)local_5c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_5c")) (/ "/") (cast_expression "(int)local_40" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_40"))) () ")")) (* "*") (cast_expression "(int)unaff_s5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s5"))) () ")")))) (; ";")) (expression_statement "local_4c[6] = (code **)unaff_s5;" (assignment_expression "local_4c[6] = (code **)unaff_s5" (subscript_expression "local_4c[6]" (identifier "local_4c") ([ "[") (number_literal "6") (] "]")) (= "=") (cast_expression "(code **)unaff_s5" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "unaff_s5"))) (; ";")) (expression_statement "param_3 = (code *******)0x0;" (assignment_expression "param_3 = (code *******)0x0" (identifier "param_3") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000d5e38(local_4c,0)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000d5e38(local_4c,0)" (identifier "FUN_000d5e38") (argument_list "(local_4c,0)" (( "(") (identifier "local_4c") (, ",") (number_literal "0") () ")"))))) (; ";")) (labeled_statement "LAB_000d6f68:\n      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" (statement_identifier "LAB_000d6f68") (: ":") (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";")))) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);" (assignment_expression "pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1])" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000ca0b8(param_1[1])" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000ca0b8(param_1[1])" (identifier "FUN_000ca0b8") (argument_list "(param_1[1])" (( "(") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) () ")"))))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d6e48;" (goto "goto") (statement_identifier "LAB_000d6e48") (; ";"))) (if_statement "if ((code ******)local_50 != (code ******)0x0) {\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }" (if "if") (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" (( "(") (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "local_50")) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pppppppcVar21 = (code *******)0x65;\n        goto LAB_000d6c34;\n      }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)0x65;" (assignment_expression "pppppppcVar21 = (code *******)0x65" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x65" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x65"))) (; ";")) (goto_statement "goto LAB_000d6c34;" (goto "goto") (statement_identifier "LAB_000d6c34") (; ";")) (} "}"))) (expression_statement "pppppppcVar21 = (code *******)0x65;" (assignment_expression "pppppppcVar21 = (code *******)0x65" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x65" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x65"))) (; ";")) (} "}")) (else_clause "else {\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" (else "else") (compound_statement "{\nLAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;\n      if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }\n      if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }\n    }" ({ "{") (labeled_statement "LAB_000d6e48:\n      pppppppcVar24 = (code *******)0x0;" (statement_identifier "LAB_000d6e48") (: ":") (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";"))) (if_statement "if ((code ******)local_50 != (code ******)0x0) {\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }" (if "if") (parenthesized_expression "((code ******)local_50 != (code ******)0x0)" (( "(") (binary_expression "(code ******)local_50 != (code ******)0x0" (cast_expression "(code ******)local_50" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "local_50")) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000d6c34:\n        FUN_000d6488(param_1[6],0);\n        pppppppcVar24 = (code *******)0x0;\n        FUN_000ca0b8(param_1[6]);\n      }" ({ "{") (labeled_statement "LAB_000d6c34:\n        FUN_000d6488(param_1[6],0);" (statement_identifier "LAB_000d6c34") (: ":") (expression_statement "FUN_000d6488(param_1[6],0);" (call_expression "FUN_000d6488(param_1[6],0)" (identifier "FUN_000d6488") (argument_list "(param_1[6],0)" (( "(") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) (, ",") (number_literal "0") () ")"))) (; ";"))) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "FUN_000ca0b8(param_1[6]);" (call_expression "FUN_000ca0b8(param_1[6])" (identifier "FUN_000ca0b8") (argument_list "(param_1[6])" (( "(") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) () ")"))) (; ";")) (} "}"))) (if_statement "if (pppppppcVar21 == (code *******)0xc0a) {\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0xc0a)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0xc0a" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0xc0a" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xc0a"))) () ")")) (compound_statement "{\n        pppppppcVar21 = (code *******)&DAT_00000007;\n      }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000007" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)&DAT_00000007" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (} "}"))) (} "}"))))) (labeled_statement "LAB_000d6e5c:\n    param_1[7] = (code ******)pppppppcVar21;" (statement_identifier "LAB_000d6e5c") (: ":") (expression_statement "param_1[7] = (code ******)pppppppcVar21;" (assignment_expression "param_1[7] = (code ******)pppppppcVar21" (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(code ******)pppppppcVar21" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar21"))) (; ";"))) (} "}")) (else_clause "else {\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" (else "else") (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);\n    pppppppcVar21 = (code *******)param_1[7];\n    if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }\nLAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }\n  }" ({ "{") (expression_statement "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_enter_0018fbac)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_mutex_enter_0018fbac" (* "*") (cast_expression "(code *)PTR_sqlite3_mutex_enter_0018fbac" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_mutex_enter_0018fbac"))) () ")")) (argument_list "((*param_1)[3])" (( "(") (subscript_expression "(*param_1)[3]" (parenthesized_expression "(*param_1)" (( "(") (pointer_expression "*param_1" (* "*") (identifier "param_1")) () ")")) ([ "[") (number_literal "3") (] "]")) () ")"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)param_1[7];" (assignment_expression "pppppppcVar21 = (code *******)param_1[7]" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)param_1[7]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")))) (; ";")) (if_statement "if (pppppppcVar21 == (code *******)0x0) {\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }" (if "if") (parenthesized_expression "(pppppppcVar21 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 == (code *******)0x0" (identifier "pppppppcVar21") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      ppppppcVar15 = param_1[6];\nLAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];\n      local_4c = (code ***)*param_1[1][1];\n      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;\n      if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }\n      pppppppcVar21 = (code *******)&DAT_00000005;\n      local_50 = (code *****)0x0;\nLAB_000d6a44:\n      ppppppcVar15 = param_1[6];\nLAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];\n      local_5c = (code ******)pppppcVar2[8];\n      local_40 = (code ******)param_1[1][1][8];\n      cVar1 = *(char *)((int)*param_1[1][1] + 5);\n      goto LAB_000d6a70;\n    }" ({ "{") (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (labeled_statement "LAB_000d6970:\n      local_60 = (code ***)*ppppppcVar15[1];" (statement_identifier "LAB_000d6970") (: ":") (expression_statement "local_60 = (code ***)*ppppppcVar15[1];" (assignment_expression "local_60 = (code ***)*ppppppcVar15[1]" (identifier "local_60") (= "=") (cast_expression "(code ***)*ppppppcVar15[1]" (( "(") (type_descriptor "code ***" (type_identifier "code") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "*ppppppcVar15[1]" (* "*") (subscript_expression "ppppppcVar15[1]" (identifier "ppppppcVar15") ([ "[") (number_literal "1") (] "]"))))) (; ";"))) (expression_statement "local_4c = (code ***)*param_1[1][1];" (assignment_expression "local_4c = (code ***)*param_1[1][1]" (identifier "local_4c") (= "=") (cast_expression "(code ***)*param_1[1][1]" (( "(") (type_descriptor "code ***" (type_identifier "code") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "*param_1[1][1]" (* "*") (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]"))))) (; ";")) (if_statement "if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))\n      goto LAB_000d69a8;" (if "if") (parenthesized_expression "((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))" (( "(") (binary_expression "(*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02')" (parenthesized_expression "(*param_1 == (code ******)0x0)" (( "(") (binary_expression "*param_1 == (code ******)0x0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (== "==") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(*(char *)(ppppppcVar15[1] + 5) != '\x02')" (( "(") (binary_expression "*(char *)(ppppppcVar15[1] + 5) != '\x02'" (pointer_expression "*(char *)(ppppppcVar15[1] + 5)" (* "*") (cast_expression "(char *)(ppppppcVar15[1] + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(ppppppcVar15[1] + 5)" (( "(") (binary_expression "ppppppcVar15[1] + 5" (subscript_expression "ppppppcVar15[1]" (identifier "ppppppcVar15") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "5")) () ")")))) (!= "!=") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")"))) () ")")) (goto_statement "goto LAB_000d69a8;" (goto "goto") (statement_identifier "LAB_000d69a8") (; ";"))) (if_statement "if (param_1[3] != (code ******)0x0) {\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" (if "if") (parenthesized_expression "(param_1[3] != (code ******)0x0)" (( "(") (binary_expression "param_1[3] != (code ******)0x0" (subscript_expression "param_1[3]" (identifier "param_1") ([ "[") (number_literal "3") (] "]")) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        local_50 = (code *****)0x0;\n        pppppppcVar21 = (code *******)&DAT_00000005;\n        goto LAB_000d72d0;\n      }" ({ "{") (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" (identifier "local_50") (= "=") (cast_expression "(code *****)0x0" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000005" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) (; ";")) (goto_statement "goto LAB_000d72d0;" (goto "goto") (statement_identifier "LAB_000d72d0") (; ";")) (} "}"))) (expression_statement "pppppppcVar21 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar21 = (code *******)&DAT_00000005" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) (; ";")) (expression_statement "local_50 = (code *****)0x0;" (assignment_expression "local_50 = (code *****)0x0" (identifier "local_50") (= "=") (cast_expression "(code *****)0x0" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000d6a44:\n      ppppppcVar15 = param_1[6];" (statement_identifier "LAB_000d6a44") (: ":") (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";"))) (labeled_statement "LAB_000d6a48:\n      pppppcVar2 = ppppppcVar15[1];" (statement_identifier "LAB_000d6a48") (: ":") (expression_statement "pppppcVar2 = ppppppcVar15[1];" (assignment_expression "pppppcVar2 = ppppppcVar15[1]" (identifier "pppppcVar2") (= "=") (subscript_expression "ppppppcVar15[1]" (identifier "ppppppcVar15") ([ "[") (number_literal "1") (] "]"))) (; ";"))) (expression_statement "local_5c = (code ******)pppppcVar2[8];" (assignment_expression "local_5c = (code ******)pppppcVar2[8]" (identifier "local_5c") (= "=") (cast_expression "(code ******)pppppcVar2[8]" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "pppppcVar2[8]" (identifier "pppppcVar2") ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "local_40 = (code ******)param_1[1][1][8];" (assignment_expression "local_40 = (code ******)param_1[1][1][8]" (identifier "local_40") (= "=") (cast_expression "(code ******)param_1[1][1][8]" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "param_1[1][1][8]" (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "8") (] "]")))) (; ";")) (expression_statement "cVar1 = *(char *)((int)*param_1[1][1] + 5);" (assignment_expression "cVar1 = *(char *)((int)*param_1[1][1] + 5)" (identifier "cVar1") (= "=") (pointer_expression "*(char *)((int)*param_1[1][1] + 5)" (* "*") (cast_expression "(char *)((int)*param_1[1][1] + 5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)*param_1[1][1] + 5)" (( "(") (binary_expression "(int)*param_1[1][1] + 5" (cast_expression "(int)*param_1[1][1]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*param_1[1][1]" (* "*") (subscript_expression "param_1[1][1]" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) ([ "[") (number_literal "1") (] "]")))) (+ "+") (number_literal "5")) () ")"))))) (; ";")) (goto_statement "goto LAB_000d6a70;" (goto "goto") (statement_identifier "LAB_000d6a70") (; ";")) (} "}"))) (labeled_statement "LAB_000d7330:\n    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" (statement_identifier "LAB_000d7330") (: ":") (if_statement "if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" (if "if") (parenthesized_expression "((code *)((int)pppppppcVar21 + -5) < (code *)0x2)" (( "(") (binary_expression "(code *)((int)pppppppcVar21 + -5) < (code *)0x2" (cast_expression "(code *)((int)pppppppcVar21 + -5)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppcVar21 + -5)" (( "(") (binary_expression "(int)pppppppcVar21 + -5" (cast_expression "(int)pppppppcVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar21")) (+ "+") (number_literal "-5")) () ")"))) (< "<") (cast_expression "(code *)0x2" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x2"))) () ")")) (compound_statement "{\n      ppppppcVar15 = param_1[6];\n      goto LAB_000d6970;\n    }" ({ "{") (expression_statement "ppppppcVar15 = param_1[6];" (assignment_expression "ppppppcVar15 = param_1[6]" (identifier "ppppppcVar15") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (goto_statement "goto LAB_000d6970;" (goto "goto") (statement_identifier "LAB_000d6970") (; ";")) (} "}")))) (} "}")))) (if_statement "if (*param_1 != (code ******)0x0) {\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }" (if "if") (parenthesized_expression "(*param_1 != (code ******)0x0)" (( "(") (binary_expression "*param_1 != (code ******)0x0" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);\n  }" ({ "{") (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" (* "*") (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_mutex_leave_0018fba8"))) () ")")) (argument_list "((*param_1)[3])" (( "(") (subscript_expression "(*param_1)[3]" (parenthesized_expression "(*param_1)" (( "(") (pointer_expression "*param_1" (* "*") (identifier "param_1")) () ")")) ([ "[") (number_literal "3") (] "]")) () ")"))) (; ";")) (} "}"))) (expression_statement "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);" (call_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6])" (parenthesized_expression "(*(code *)(PTR_LAB_0018fb58 + 0x524c))" (( "(") (pointer_expression "*(code *)(PTR_LAB_0018fb58 + 0x524c)" (* "*") (cast_expression "(code *)(PTR_LAB_0018fb58 + 0x524c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_LAB_0018fb58 + 0x524c)" (( "(") (binary_expression "PTR_LAB_0018fb58 + 0x524c" (identifier "PTR_LAB_0018fb58") (+ "+") (number_literal "0x524c")) () ")")))) () ")")) (argument_list "(param_1[6])" (( "(") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) () ")"))) (; ";")) (expression_statement "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);" (call_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3])" (parenthesized_expression "(*(code *)PTR_sqlite3_mutex_leave_0018fba8)" (( "(") (pointer_expression "*(code *)PTR_sqlite3_mutex_leave_0018fba8" (* "*") (cast_expression "(code *)PTR_sqlite3_mutex_leave_0018fba8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_sqlite3_mutex_leave_0018fba8"))) () ")")) (argument_list "(param_1[5][3])" (( "(") (subscript_expression "param_1[5][3]" (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]")) ([ "[") (number_literal "3") (] "]")) () ")"))) (; ";")) (if_statement "if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {\n    return pppppppcVar21;\n  }" (if "if") (parenthesized_expression "(local_2c == *(uint *)PTR___stack_chk_guard_0018fecc)" (( "(") (binary_expression "local_2c == *(uint *)PTR___stack_chk_guard_0018fecc" (identifier "local_2c") (== "==") (pointer_expression "*(uint *)PTR___stack_chk_guard_0018fecc" (* "*") (cast_expression "(uint *)PTR___stack_chk_guard_0018fecc" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0018fecc")))) () ")")) (compound_statement "{\n    return pppppppcVar21;\n  }" ({ "{") (return_statement "return pppppppcVar21;" (return "return") (identifier "pppppppcVar21") (; ";")) (} "}"))) (expression_statement "pcVar3 = FUN_000d7350;" (assignment_expression "pcVar3 = FUN_000d7350" (identifier "pcVar3") (= "=") (identifier "FUN_000d7350")) (; ";")) (expression_statement "uVar20 = local_2c;" (assignment_expression "uVar20 = local_2c" (identifier "uVar20") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "puVar22 = PTR___stack_chk_fail_0018fea0;" (assignment_expression "puVar22 = PTR___stack_chk_fail_0018fea0" (identifier "puVar22") (= "=") (identifier "PTR___stack_chk_fail_0018fea0")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_0018fea0)();" (call_expression "(*(code *)PTR___stack_chk_fail_0018fea0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0018fea0)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_0018fea0" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_0018fea0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_0018fea0"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puStack_198 = puVar22 + 0xc05d0;" (assignment_expression "puStack_198 = puVar22 + 0xc05d0" (identifier "puStack_198") (= "=") (binary_expression "puVar22 + 0xc05d0" (identifier "puVar22") (+ "+") (number_literal "0xc05d0"))) (; ";")) (expression_statement "ppppppcStack_188 = local_70;" (assignment_expression "ppppppcStack_188 = local_70" (identifier "ppppppcStack_188") (= "=") (identifier "local_70")) (; ";")) (expression_statement "uStack_174 = uStack_64;" (assignment_expression "uStack_174 = uStack_64" (identifier "uStack_174") (= "=") (identifier "uStack_64")) (; ";")) (expression_statement "pppcStack_17c = local_60;" (assignment_expression "pppcStack_17c = local_60" (identifier "pppcStack_17c") (= "=") (identifier "local_60")) (; ";")) (expression_statement "ppppppcStack_178 = local_5c;" (assignment_expression "ppppppcStack_178 = local_5c" (identifier "ppppppcStack_178") (= "=") (identifier "local_5c")) (; ";")) (expression_statement "apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);" (assignment_expression "apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c)" (subscript_expression "apppppcStack_114[0x1a]" (identifier "apppppcStack_114") ([ "[") (number_literal "0x1a") (] "]")) (= "=") (cast_expression "(code *****)**(undefined4 **)(puVar22 + 0xb8b7c)" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (pointer_expression "**(undefined4 **)(puVar22 + 0xb8b7c)" (* "*") (pointer_expression "*(undefined4 **)(puVar22 + 0xb8b7c)" (* "*") (cast_expression "(undefined4 **)(puVar22 + 0xb8b7c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + 0xb8b7c)" (( "(") (binary_expression "puVar22 + 0xb8b7c" (identifier "puVar22") (+ "+") (number_literal "0xb8b7c")) () ")"))))))) (; ";")) (expression_statement "iStack_130 = 0;" (assignment_expression "iStack_130 = 0" (identifier "iStack_130") (= "=") (number_literal "0")) (; ";")) (expression_statement "ppppppcStack_18c = (code ******)param_4;" (assignment_expression "ppppppcStack_18c = (code ******)param_4" (identifier "ppppppcStack_18c") (= "=") (cast_expression "(code ******)param_4" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_4"))) (; ";")) (expression_statement "ppppppcStack_180 = (code ******)pppppppcVar24;" (assignment_expression "ppppppcStack_180 = (code ******)pppppppcVar24" (identifier "ppppppcStack_180") (= "=") (cast_expression "(code ******)pppppppcVar24" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar24"))) (; ";")) (expression_statement "ppppppcStack_a8 = (code ******)param_1;" (assignment_expression "ppppppcStack_a8 = (code ******)param_1" (identifier "ppppppcStack_a8") (= "=") (cast_expression "(code ******)param_1" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_1"))) (; ";")) (expression_statement "ppppppcStack_a4 = (code ******)pppppppcVar21;" (assignment_expression "ppppppcStack_a4 = (code ******)pppppppcVar21" (identifier "ppppppcStack_a4") (= "=") (cast_expression "(code ******)pppppppcVar21" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar21"))) (; ";")) (expression_statement "ppppppcStack_a0 = (code ******)unaff_s2;" (assignment_expression "ppppppcStack_a0 = (code ******)unaff_s2" (identifier "ppppppcStack_a0") (= "=") (cast_expression "(code ******)unaff_s2" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s2"))) (; ";")) (expression_statement "ppppppcStack_9c = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_9c = (code ******)unaff_s3" (identifier "ppppppcStack_9c") (= "=") (cast_expression "(code ******)unaff_s3" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s3"))) (; ";")) (expression_statement "ppppppcStack_98 = (code ******)param_2;" (assignment_expression "ppppppcStack_98 = (code ******)param_2" (identifier "ppppppcStack_98") (= "=") (cast_expression "(code ******)param_2" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_2"))) (; ";")) (expression_statement "ppppppcStack_94 = (code ******)unaff_s5;" (assignment_expression "ppppppcStack_94 = (code ******)unaff_s5" (identifier "ppppppcStack_94") (= "=") (cast_expression "(code ******)unaff_s5" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s5"))) (; ";")) (expression_statement "ppppppcStack_90 = (code ******)unaff_s6;" (assignment_expression "ppppppcStack_90 = (code ******)unaff_s6" (identifier "ppppppcStack_90") (= "=") (cast_expression "(code ******)unaff_s6" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s6"))) (; ";")) (expression_statement "pcStack_8c = unaff_s7;" (assignment_expression "pcStack_8c = unaff_s7" (identifier "pcStack_8c") (= "=") (identifier "unaff_s7")) (; ";")) (expression_statement "ppppppcStack_88 = (code ******)unaff_s8;" (assignment_expression "ppppppcStack_88 = (code ******)unaff_s8" (identifier "ppppppcStack_88") (= "=") (cast_expression "(code ******)unaff_s8" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s8"))) (; ";")) (expression_statement "pcStack_84 = pcVar3;" (assignment_expression "pcStack_84 = pcVar3" (identifier "pcStack_84") (= "=") (identifier "pcVar3")) (; ";")) (expression_statement "ppppppcStack_78 = (code ******)param_3;" (assignment_expression "ppppppcStack_78 = (code ******)param_3" (identifier "ppppppcStack_78") (= "=") (cast_expression "(code ******)param_3" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_3"))) (; ";")) (if_statement "if (*(char *)(uVar20 + 0x2e) == '\0') {\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }\n  else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" (if "if") (parenthesized_expression "(*(char *)(uVar20 + 0x2e) == '\0')" (( "(") (binary_expression "*(char *)(uVar20 + 0x2e) == '\0'" (pointer_expression "*(char *)(uVar20 + 0x2e)" (* "*") (cast_expression "(char *)(uVar20 + 0x2e)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x2e)" (( "(") (binary_expression "uVar20 + 0x2e" (identifier "uVar20") (+ "+") (number_literal "0x2e")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    param_3 = (code *******)0x1;\n    pppppppcVar24 = (code *******)0x1;\n    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();\n    pppppppcVar6 = pppppppcVar25;\n    if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }\n  }" ({ "{") (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" (identifier "param_3") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();" (assignment_expression "pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" (identifier "pppppppcVar25") (= "=") (cast_expression "(code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))()" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))" (( "(") (pointer_expression "*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" (* "*") (cast_expression "(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar22 + 0xb8808) + 0x4cd8)" (( "(") (binary_expression "*(int *)(puVar22 + 0xb8808) + 0x4cd8" (pointer_expression "*(int *)(puVar22 + 0xb8808)" (* "*") (cast_expression "(int *)(puVar22 + 0xb8808)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + 0xb8808)" (( "(") (binary_expression "puVar22 + 0xb8808" (identifier "puVar22") (+ "+") (number_literal "0xb8808")) () ")")))) (+ "+") (number_literal "0x4cd8")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "pppppppcVar6 = pppppppcVar25;" (assignment_expression "pppppppcVar6 = pppppppcVar25" (identifier "pppppppcVar6") (= "=") (identifier "pppppppcVar25")) (; ";")) (if_statement "if (pppppppcVar25 == (code *******)0x0) {\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }" (if "if") (parenthesized_expression "(pppppppcVar25 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar25 == (code *******)0x0" (identifier "pppppppcVar25") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      *(undefined1 *)(uVar20 + 0x2d) = 1;\n      param_4 = (code *******)0x0;\n      if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n      param_3 = (code *******)0x1;\n      pppppppcVar24 = (code *******)0x1;\n      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n      *(undefined1 *)(uVar20 + 0x2d) = 0;\n    }" ({ "{") (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 1;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 1" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" (* "*") (cast_expression "(undefined1 *)(uVar20 + 0x2d)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x2d)" (( "(") (binary_expression "uVar20 + 0x2d" (identifier "uVar20") (+ "+") (number_literal "0x2d")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if ((code *******)ppppppcStack_78 == (code *******)0x0) {\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }\n      else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" (if "if") (parenthesized_expression "((code *******)ppppppcStack_78 == (code *******)0x0)" (( "(") (binary_expression "(code *******)ppppppcStack_78 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_78" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_78")) (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);\n        pppppppcVar6 = param_1;\n        if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }\n        if (param_1 == (code *******)0x0) goto LAB_000d74f0;\n      }" ({ "{") (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" (identifier "ppppppcStack_170") (= "=") (identifier "ppppppcStack_78")) (; ";")) (labeled_statement "LAB_000d7410:\n        param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);" (statement_identifier "LAB_000d7410") (: ":") (expression_statement "param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);" (assignment_expression "param_1 = (code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" (identifier "param_1") (= "=") (cast_expression "(code *******)\n                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x1cfc)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x1cfc" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7c94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7c94)" (( "(") (binary_expression "puStack_198 + -0x7c94" (identifier "puStack_198") (+ "+") (number_literal "-0x7c94")) () ")")))) (+ "+") (number_literal "-0x1cfc")) () ")")))) () ")")) (argument_list "(uVar20,&iStack_130)" (( "(") (identifier "uVar20") (, ",") (pointer_expression "&iStack_130" (& "&") (identifier "iStack_130")) () ")"))))) (; ";"))) (expression_statement "pppppppcVar6 = param_1;" (assignment_expression "pppppppcVar6 = param_1" (identifier "pppppppcVar6") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (iStack_130 != 0) {\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" (if "if") (parenthesized_expression "(iStack_130 != 0)" (( "(") (binary_expression "iStack_130 != 0" (identifier "iStack_130") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          param_4 = (code *******)0x0;\n          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);\n          param_3 = (code *******)0x1;\n          pppppppcVar24 = (code *******)0x1;\n          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);\n          *(undefined1 *)(uVar20 + 0x2d) = 0;\n          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }\n          goto LAB_000d7ea0;\n        }" ({ "{") (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }\n          else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" (if "if") (parenthesized_expression "(*(int *)**(undefined4 **)(uVar20 + 4) < 3)" (( "(") (binary_expression "*(int *)**(undefined4 **)(uVar20 + 4) < 3" (pointer_expression "*(int *)**(undefined4 **)(uVar20 + 4)" (* "*") (cast_expression "(int *)**(undefined4 **)(uVar20 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(uVar20 + 4)" (* "*") (pointer_expression "*(undefined4 **)(uVar20 + 4)" (* "*") (cast_expression "(undefined4 **)(uVar20 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar20 + 4)" (( "(") (binary_expression "uVar20 + 4" (identifier "uVar20") (+ "+") (number_literal "4")) () ")"))))))) (< "<") (number_literal "3")) () ")")) (compound_statement "{\n            if (param_1 == (code *******)0x0) goto LAB_000d74f0;\nLAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);\n          }" ({ "{") (if_statement "if (param_1 == (code *******)0x0) goto LAB_000d74f0;" (if "if") (parenthesized_expression "(param_1 == (code *******)0x0)" (( "(") (binary_expression "param_1 == (code *******)0x0" (identifier "param_1") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d74f0;" (goto "goto") (statement_identifier "LAB_000d74f0") (; ";"))) (labeled_statement "LAB_000d7e2c:\n            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);" (statement_identifier "LAB_000d7e2c") (: ":") (expression_statement "(**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" (( "(") (pointer_expression "**(code **)(puStack_198 + -0x7b20)" (* "*") (pointer_expression "*(code **)(puStack_198 + -0x7b20)" (* "*") (cast_expression "(code **)(puStack_198 + -0x7b20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7b20)" (( "(") (binary_expression "puStack_198 + -0x7b20" (identifier "puStack_198") (+ "+") (number_literal "-0x7b20")) () ")"))))) () ")")) (argument_list "(uVar20 + 0x34,0,0x30)" (( "(") (binary_expression "uVar20 + 0x34" (identifier "uVar20") (+ "+") (number_literal "0x34")) (, ",") (number_literal "0") (, ",") (number_literal "0x30") () ")"))) (; ";"))) (} "}")) (else_clause "else {\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" (else "else") (compound_statement "{\n            uStack_1a0 = uStack_1a0 & 0xffffffff;\n            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();\n            if (param_1 != (code *******)0x0) goto LAB_000d8034;\nLAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);\n            puVar22 = puStack_198;\n            if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }\n            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;\n            if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }\n            if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }\n            if (iStack_130 != 0) goto LAB_000d7e2c;\n          }" ({ "{") (expression_statement "uStack_1a0 = uStack_1a0 & 0xffffffff;" (assignment_expression "uStack_1a0 = uStack_1a0 & 0xffffffff" (identifier "uStack_1a0") (= "=") (binary_expression "uStack_1a0 & 0xffffffff" (identifier "uStack_1a0") (& "&") (number_literal "0xffffffff"))) (; ";")) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))()" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xb40)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xb40" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xb40")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if (param_1 != (code *******)0x0) goto LAB_000d8034;" (if "if") (parenthesized_expression "(param_1 != (code *******)0x0)" (( "(") (binary_expression "param_1 != (code *******)0x0" (identifier "param_1") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d8034;" (goto "goto") (statement_identifier "LAB_000d8034") (; ";"))) (labeled_statement "LAB_000d74f0:\n            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);" (statement_identifier "LAB_000d74f0") (: ":") (expression_statement "ppppppcStack_168 = *(code *******)(uVar20 + 0x44);" (assignment_expression "ppppppcStack_168 = *(code *******)(uVar20 + 0x44)" (identifier "ppppppcStack_168") (= "=") (pointer_expression "*(code *******)(uVar20 + 0x44)" (* "*") (cast_expression "(code *******)(uVar20 + 0x44)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(uVar20 + 0x44)" (( "(") (binary_expression "uVar20 + 0x44" (identifier "uVar20") (+ "+") (number_literal "0x44")) () ")"))))) (; ";"))) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if ((code *******)ppppppcStack_168 == (code *******)0x0) {\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }\n            else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" (if "if") (parenthesized_expression "((code *******)ppppppcStack_168 == (code *******)0x0)" (( "(") (binary_expression "(code *******)ppppppcStack_168 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_168" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_168")) (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }\n              puStack_164 = (undefined4 *)0x0;\nLAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;\n              pppppppcVar24 = unaff_s5;\n              pppppppcVar6 = pppppppcVar25;\n              if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }\nLAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);\n              unaff_s5 = pppppppcVar24;\n            }" ({ "{") (if_statement "if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }" (if "if") (parenthesized_expression "((code *******)ppppppcStack_170 == (code *******)0x0)" (( "(") (binary_expression "(code *******)ppppppcStack_170 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_170" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_170")) (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                puStack_164 = (undefined4 *)0x0;\n                pppppppcVar24 = unaff_s5;\n                pppppppcVar6 = (code *******)0x0;\n                goto LAB_000d8010;\n              }" ({ "{") (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" (identifier "puStack_164") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppcVar6 = (code *******)0x0;" (assignment_expression "pppppppcVar6 = (code *******)0x0" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000d8010;" (goto "goto") (statement_identifier "LAB_000d8010") (; ";")) (} "}"))) (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" (identifier "puStack_164") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000d7f78:\n              param_1 = (code *******)ppppppcStack_170;" (statement_identifier "LAB_000d7f78") (: ":") (expression_statement "param_1 = (code *******)ppppppcStack_170;" (assignment_expression "param_1 = (code *******)ppppppcStack_170" (identifier "param_1") (= "=") (cast_expression "(code *******)ppppppcStack_170" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_170"))) (; ";"))) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "pppppppcVar6 = pppppppcVar25;" (assignment_expression "pppppppcVar6 = pppppppcVar25" (identifier "pppppppcVar6") (= "=") (identifier "pppppppcVar25")) (; ";")) (if_statement "if (1 < (int)ppppppcStack_170) {\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }" (if "if") (parenthesized_expression "(1 < (int)ppppppcStack_170)" (( "(") (binary_expression "1 < (int)ppppppcStack_170" (number_literal "1") (< "<") (cast_expression "(int)ppppppcStack_170" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_170"))) () ")")) (compound_statement "{\n                sqlite3_randomness(4,&pppppcStack_120);\n                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);\n                param_4 = (code *******)&DAT_00000004;\n                pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                puVar22 = puStack_198;\n                if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }\n              }" ({ "{") (expression_statement "sqlite3_randomness(4,&pppppcStack_120);" (call_expression "sqlite3_randomness(4,&pppppcStack_120)" (identifier "sqlite3_randomness") (argument_list "(4,&pppppcStack_120)" (( "(") (number_literal "4") (, ",") (pointer_expression "&pppppcStack_120" (& "&") (identifier "pppppcStack_120")) () ")"))) (; ";")) (expression_statement "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_)" (identifier "uStack_1a0") (= "=") (call_expression "CONCAT44(4,uStack_1a0._4_4_)" (identifier "CONCAT44") (argument_list "(4,uStack_1a0._4_4_)" (( "(") (number_literal "4") (, ",") (field_expression "uStack_1a0._4_4_" (identifier "uStack_1a0") (. ".") (field_identifier "_4_4_")) () ")")))) (; ";")) (expression_statement "param_4 = (code *******)&DAT_00000004;" (assignment_expression "param_4 = (code *******)&DAT_00000004" (identifier "param_4") (= "=") (cast_expression "(code *******)&DAT_00000004" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000004" (& "&") (identifier "DAT_00000004")))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)\n                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                         (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d7c")) () ")")))) () ")")) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (identifier "uVar20") (, ",") (identifier "ppppppcStack_18c") (, ",") (identifier "ppppppcStack_188") () ")"))))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if (pppppppcVar6 == (code *******)0x0) {\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }" (if "if") (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar6 == (code *******)0x0" (identifier "pppppppcVar6") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                  if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }\n                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);\n                  puVar22 = puStack_198;\n                }" ({ "{") (if_statement "if (param_1 == (code *******)0x3) {\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }" (if "if") (parenthesized_expression "(param_1 == (code *******)0x3)" (( "(") (binary_expression "param_1 == (code *******)0x3" (identifier "param_1") (== "==") (cast_expression "(code *******)0x3" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x3"))) () ")")) (compound_statement "{\n                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);\n                    param_4 = (code *******)0x0;\n                    pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));\n                  }" ({ "{") (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7110)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7110" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7d50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7d50)" (( "(") (binary_expression "puStack_198 + -0x7d50" (identifier "puStack_198") (+ "+") (number_literal "-0x7d50")) () ")")))) (+ "+") (number_literal "-0x7110")) () ")")))) () ")")) (argument_list "(uVar20,pppppcStack_120)" (( "(") (identifier "uVar20") (, ",") (identifier "pppppcStack_120") () ")"))) (; ";")) (expression_statement "param_4 = (code *******)0x0;" (assignment_expression "param_4 = (code *******)0x0" (identifier "param_4") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8));" (assignment_expression "pppppppcVar6 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))\n                                             (*(undefined4 *)(uVar20 + 8))" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa14)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xa14")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 8))" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 8)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 8)" (( "(") (binary_expression "uVar20 + 8" (identifier "uVar20") (+ "+") (number_literal "8")) () ")")))) () ")"))))) (; ";")) (} "}"))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d2c")) () ")")))) () ")")) (argument_list "(uVar20,4,4)" (( "(") (identifier "uVar20") (, ",") (number_literal "4") (, ",") (number_literal "4") () ")"))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_000d8010:\n              (**(code **)(puVar22 + -0x7fa8))(puStack_164);" (statement_identifier "LAB_000d8010") (: ":") (expression_statement "(**(code **)(puVar22 + -0x7fa8))(puStack_164);" (call_expression "(**(code **)(puVar22 + -0x7fa8))(puStack_164)" (parenthesized_expression "(**(code **)(puVar22 + -0x7fa8))" (( "(") (pointer_expression "**(code **)(puVar22 + -0x7fa8)" (* "*") (pointer_expression "*(code **)(puVar22 + -0x7fa8)" (* "*") (cast_expression "(code **)(puVar22 + -0x7fa8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + -0x7fa8)" (( "(") (binary_expression "puVar22 + -0x7fa8" (identifier "puVar22") (+ "+") (number_literal "-0x7fa8")) () ")"))))) () ")")) (argument_list "(puStack_164)" (( "(") (identifier "puStack_164") () ")"))) (; ";"))) (expression_statement "unaff_s5 = pppppppcVar24;" (assignment_expression "unaff_s5 = pppppppcVar24" (identifier "unaff_s5") (= "=") (identifier "pppppppcVar24")) (; ";")) (} "}")) (else_clause "else {\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" (else "else") (compound_statement "{\n              ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);\n              if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }\n              pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);\n            }" ({ "{") (expression_statement "ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);" (assignment_expression "ppppppcStack_15c =\n                   (code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" (identifier "ppppppcStack_15c") (= "=") (cast_expression "(code ******)\n                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00)" (( "(") (binary_expression "(*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00" (binary_expression "(*(ushort *)(uVar20 + 0x42) & 1) << 0x10" (parenthesized_expression "(*(ushort *)(uVar20 + 0x42) & 1)" (( "(") (binary_expression "*(ushort *)(uVar20 + 0x42) & 1" (pointer_expression "*(ushort *)(uVar20 + 0x42)" (* "*") (cast_expression "(ushort *)(uVar20 + 0x42)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x42)" (( "(") (binary_expression "uVar20 + 0x42" (identifier "uVar20") (+ "+") (number_literal "0x42")) () ")")))) (& "&") (number_literal "1")) () ")")) (<< "<<") (number_literal "0x10")) (| "|") (binary_expression "*(ushort *)(uVar20 + 0x42) & 0xfe00" (pointer_expression "*(ushort *)(uVar20 + 0x42)" (* "*") (cast_expression "(ushort *)(uVar20 + 0x42)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x42)" (( "(") (binary_expression "uVar20 + 0x42" (identifier "uVar20") (+ "+") (number_literal "0x42")) () ")")))) (& "&") (number_literal "0xfe00"))) () ")")))) (; ";")) (if_statement "if (ppppppcStack_15c == (code ******)&_gp_1) {\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" (if "if") (parenthesized_expression "(ppppppcStack_15c == (code ******)&_gp_1)" (( "(") (binary_expression "ppppppcStack_15c == (code ******)&_gp_1" (identifier "ppppppcStack_15c") (== "==") (cast_expression "(code ******)&_gp_1" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1")))) () ")")) (compound_statement "{\n                iVar23 = **(int **)(uVar20 + 0x20);\n                param_1 = (code *******)0x1;\n                iStack_154 = iVar23;\n                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }\n                goto LAB_000d8010;\n              }" ({ "{") (expression_statement "iVar23 = **(int **)(uVar20 + 0x20);" (assignment_expression "iVar23 = **(int **)(uVar20 + 0x20)" (identifier "iVar23") (= "=") (pointer_expression "**(int **)(uVar20 + 0x20)" (* "*") (pointer_expression "*(int **)(uVar20 + 0x20)" (* "*") (cast_expression "(int **)(uVar20 + 0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar20 + 0x20)" (( "(") (binary_expression "uVar20 + 0x20" (identifier "uVar20") (+ "+") (number_literal "0x20")) () ")")))))) (; ";")) (expression_statement "param_1 = (code *******)0x1;" (assignment_expression "param_1 = (code *******)0x1" (identifier "param_1") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "iStack_154 = iVar23;" (assignment_expression "iStack_154 = iVar23" (identifier "iStack_154") (= "=") (identifier "iVar23")) (; ";")) (if_statement "if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }\n                else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" (if "if") (parenthesized_expression "(*(code ********)(iVar23 + 0x60) < ppppppcStack_168)" (( "(") (binary_expression "*(code ********)(iVar23 + 0x60) < ppppppcStack_168" (pointer_expression "*(code ********)(iVar23 + 0x60)" (* "*") (cast_expression "(code ********)(iVar23 + 0x60)" (( "(") (type_descriptor "code ********" (type_identifier "code") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(iVar23 + 0x60)" (( "(") (binary_expression "iVar23 + 0x60" (identifier "iVar23") (+ "+") (number_literal "0x60")) () ")")))) (< "<") (identifier "ppppppcStack_168")) () ")")) (compound_statement "{\n                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);\n                  unaff_s5 = (code *******)0x1;\n                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);\n                  unaff_s3 = (code *******)ppppppcStack_168;\n                  param_2 = pppppppcVar25;\n                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);\n                  do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);\n                  ppppppcStack_168 = (code ******)unaff_s3;\n                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }\n                }" ({ "{") (expression_statement "ppppppcStack_140 = *(code *******)(uVar20 + 0x48);" (assignment_expression "ppppppcStack_140 = *(code *******)(uVar20 + 0x48)" (identifier "ppppppcStack_140") (= "=") (pointer_expression "*(code *******)(uVar20 + 0x48)" (* "*") (cast_expression "(code *******)(uVar20 + 0x48)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(uVar20 + 0x48)" (( "(") (binary_expression "uVar20 + 0x48" (identifier "uVar20") (+ "+") (number_literal "0x48")) () ")"))))) (; ";")) (expression_statement "unaff_s5 = (code *******)0x1;" (assignment_expression "unaff_s5 = (code *******)0x1" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);" (assignment_expression "ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (identifier "ppppppcStack_184") (= "=") (cast_expression "(code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d7c")) () ")")))) (; ";")) (expression_statement "unaff_s3 = (code *******)ppppppcStack_168;" (assignment_expression "unaff_s3 = (code *******)ppppppcStack_168" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)ppppppcStack_168" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_168"))) (; ";")) (expression_statement "param_2 = pppppppcVar25;" (assignment_expression "param_2 = pppppppcVar25" (identifier "param_2") (= "=") (identifier "pppppppcVar25")) (; ";")) (expression_statement "ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);" (assignment_expression "ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (identifier "ppppppcStack_168") (= "=") (cast_expression "(code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d2c")) () ")")))) (; ";")) (do_statement "do {\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  } while (param_1 != (code *******)&DAT_00000005);" (do "do") (compound_statement "{\n                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);\n                    unaff_s2 = (code *******)pppppppcVar21[0x19];\n                    pppppppcVar6 = (code *******)((int)param_1 + 3);\n                    pppppppcVar24 = unaff_s5;\n                    if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }\n                    param_1 = (code *******)((int)param_1 + 1);\n                  }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);" (assignment_expression "pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(iVar23 + (int)param_1 * 4)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iVar23 + (int)param_1 * 4)" (( "(") (binary_expression "iVar23 + (int)param_1 * 4" (identifier "iVar23") (+ "+") (binary_expression "(int)param_1 * 4" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "unaff_s2 = (code *******)pppppppcVar21[0x19];" (assignment_expression "unaff_s2 = (code *******)pppppppcVar21[0x19]" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)pppppppcVar21[0x19]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppppcVar21[0x19]" (identifier "pppppppcVar21") ([ "[") (number_literal "0x19") (] "]")))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)((int)param_1 + 3);" (assignment_expression "pppppppcVar6 = (code *******)((int)param_1 + 3)" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)((int)param_1 + 3)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1 + 3)" (( "(") (binary_expression "(int)param_1 + 3" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "3")) () ")")))) (; ";")) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s5")) (; ";")) (if_statement "if (unaff_s2 < unaff_s3) {\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }" (if "if") (parenthesized_expression "(unaff_s2 < unaff_s3)" (( "(") (binary_expression "unaff_s2 < unaff_s3" (identifier "unaff_s2") (< "<") (identifier "unaff_s3")) () ")")) (compound_statement "{\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      ppppppcStack_16c = (code ******)pppppppcVar6;\n                      param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }\n                    }" ({ "{") (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" (identifier "uStack_1a0") (= "=") (call_expression "CONCAT44(1,uStack_1a0._4_4_)" (identifier "CONCAT44") (argument_list "(1,uStack_1a0._4_4_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_1a0._4_4_" (identifier "uStack_1a0") (. ".") (field_identifier "_4_4_")) () ")")))) (; ";")) (expression_statement "ppppppcStack_16c = (code ******)pppppppcVar6;" (assignment_expression "ppppppcStack_16c = (code ******)pppppppcVar6" (identifier "ppppppcStack_16c") (= "=") (cast_expression "(code ******)pppppppcVar6" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar6"))) (; ";")) (expression_statement "param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "param_2 = (code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                (*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)ppppppcStack_184)\n                                          (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)ppppppcStack_184)" (( "(") (pointer_expression "*(code *)ppppppcStack_184" (* "*") (cast_expression "(code *)ppppppcStack_184" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppcStack_184"))) () ")")) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (identifier "uVar20") (, ",") (identifier "ppppppcStack_18c") (, ",") (identifier "ppppppcStack_188") () ")"))))) (; ";")) (if_statement "if (param_2 == (code *******)0x0) {\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }\n                      else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" (if "if") (parenthesized_expression "(param_2 == (code *******)0x0)" (( "(") (binary_expression "param_2 == (code *******)0x0" (identifier "param_2") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        pppppppcVar16 = (code *******)0xffffffff;\n                        if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }\n                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;\n                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);\n                        param_4 = pppppppcVar6;\n                        puVar22 = puStack_198;\n                      }" ({ "{") (expression_statement "pppppppcVar16 = (code *******)0xffffffff;" (assignment_expression "pppppppcVar16 = (code *******)0xffffffff" (identifier "pppppppcVar16") (= "=") (cast_expression "(code *******)0xffffffff" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (if_statement "if (param_1 == (code *******)0x1) {\n                          pppppppcVar16 = unaff_s3;\n                        }" (if "if") (parenthesized_expression "(param_1 == (code *******)0x1)" (( "(") (binary_expression "param_1 == (code *******)0x1" (identifier "param_1") (== "==") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) () ")")) (compound_statement "{\n                          pppppppcVar16 = unaff_s3;\n                        }" ({ "{") (expression_statement "pppppppcVar16 = unaff_s3;" (assignment_expression "pppppppcVar16 = unaff_s3" (identifier "pppppppcVar16") (= "=") (identifier "unaff_s3")) (; ";")) (} "}"))) (expression_statement "pppppppcVar21[0x19] = (code ******)pppppppcVar16;" (assignment_expression "pppppppcVar21[0x19] = (code ******)pppppppcVar16" (subscript_expression "pppppppcVar21[0x19]" (identifier "pppppppcVar21") ([ "[") (number_literal "0x19") (] "]")) (= "=") (cast_expression "(code ******)pppppppcVar16" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar16"))) (; ";")) (expression_statement "(*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);" (call_expression "(*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1)" (parenthesized_expression "(*(code *)ppppppcStack_168)" (( "(") (pointer_expression "*(code *)ppppppcStack_168" (* "*") (cast_expression "(code *)ppppppcStack_168" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "ppppppcStack_168"))) () ")")) (argument_list "(uVar20,ppppppcStack_16c,1)" (( "(") (identifier "uVar20") (, ",") (identifier "ppppppcStack_16c") (, ",") (number_literal "1") () ")"))) (; ";")) (expression_statement "param_4 = pppppppcVar6;" (assignment_expression "param_4 = pppppppcVar6" (identifier "param_4") (= "=") (identifier "pppppppcVar6")) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (} "}")) (else_clause "else {\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" (else "else") (compound_statement "{\n                        param_4 = pppppppcVar6;\n                        unaff_s3 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }\n                        ppppppcStack_18c = (code ******)0x0;\n                      }" ({ "{") (expression_statement "param_4 = pppppppcVar6;" (assignment_expression "param_4 = pppppppcVar6" (identifier "param_4") (= "=") (identifier "pppppppcVar6")) (; ";")) (expression_statement "unaff_s3 = unaff_s2;" (assignment_expression "unaff_s3 = unaff_s2" (identifier "unaff_s3") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if (param_2 != (code *******)&DAT_00000005) {\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }" (if "if") (parenthesized_expression "(param_2 != (code *******)&DAT_00000005)" (( "(") (binary_expression "param_2 != (code *******)&DAT_00000005" (identifier "param_2") (!= "!=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) () ")")) (compound_statement "{\n                          puStack_164 = (undefined4 *)0x0;\n                          pppppppcVar6 = param_2;\n                          goto LAB_000d8010;\n                        }" ({ "{") (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" (identifier "puStack_164") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppppppcVar6 = param_2;" (assignment_expression "pppppppcVar6 = param_2" (identifier "pppppppcVar6") (= "=") (identifier "param_2")) (; ";")) (goto_statement "goto LAB_000d8010;" (goto "goto") (statement_identifier "LAB_000d8010") (; ";")) (} "}"))) (expression_statement "ppppppcStack_18c = (code ******)0x0;" (assignment_expression "ppppppcStack_18c = (code ******)0x0" (identifier "ppppppcStack_18c") (= "=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (} "}"))) (expression_statement "param_1 = (code *******)((int)param_1 + 1);" (assignment_expression "param_1 = (code *******)((int)param_1 + 1)" (identifier "param_1") (= "=") (cast_expression "(code *******)((int)param_1 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1 + 1)" (( "(") (binary_expression "(int)param_1 + 1" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_1 != (code *******)&DAT_00000005)" (( "(") (binary_expression "param_1 != (code *******)&DAT_00000005" (identifier "param_1") (!= "!=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) () ")")) (; ";")) (expression_statement "ppppppcStack_168 = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_168 = (code ******)unaff_s3" (identifier "ppppppcStack_168") (= "=") (cast_expression "(code ******)unaff_s3" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s3"))) (; ";")) (if_statement "if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }\n                  else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" (if "if") (parenthesized_expression "(*(code ********)(iStack_154 + 0x60) < unaff_s3)" (( "(") (binary_expression "*(code ********)(iStack_154 + 0x60) < unaff_s3" (pointer_expression "*(code ********)(iStack_154 + 0x60)" (* "*") (cast_expression "(code ********)(iStack_154 + 0x60)" (( "(") (type_descriptor "code ********" (type_identifier "code") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(iStack_154 + 0x60)" (( "(") (binary_expression "iStack_154 + 0x60" (identifier "iStack_154") (+ "+") (number_literal "0x60")) () ")")))) (< "<") (identifier "unaff_s3")) () ")")) (compound_statement "{\n                    param_1 = *(code ********)(iStack_154 + 0x60);\n                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);\n                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);\n                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);\n                    unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);\n                    ppppppcStack_134 = (code ******)pppppppcVar6;\n                    puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);\n                    unaff_s3 = pppppppcVar6;\n                    puStack_164 = puVar8;\n                    if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }\n                    pppppppcVar6 = (code *******)&DAT_00000007;\n                    puVar22 = puStack_198;\n                  }" ({ "{") (expression_statement "param_1 = *(code ********)(iStack_154 + 0x60);" (assignment_expression "param_1 = *(code ********)(iStack_154 + 0x60)" (identifier "param_1") (= "=") (pointer_expression "*(code ********)(iStack_154 + 0x60)" (* "*") (cast_expression "(code ********)(iStack_154 + 0x60)" (( "(") (type_descriptor "code ********" (type_identifier "code") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(iStack_154 + 0x60)" (( "(") (binary_expression "iStack_154 + 0x60" (identifier "iStack_154") (+ "+") (number_literal "0x60")) () ")"))))) (; ";")) (expression_statement "pppppppcVar6 = *(code ********)(uVar20 + 0x44);" (assignment_expression "pppppppcVar6 = *(code ********)(uVar20 + 0x44)" (identifier "pppppppcVar6") (= "=") (pointer_expression "*(code ********)(uVar20 + 0x44)" (* "*") (cast_expression "(code ********)(uVar20 + 0x44)" (( "(") (type_descriptor "code ********" (type_identifier "code") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(uVar20 + 0x44)" (( "(") (binary_expression "uVar20 + 0x44" (identifier "uVar20") (+ "+") (number_literal "0x44")) () ")"))))) (; ";")) (expression_statement "ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);" (assignment_expression "ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" (identifier "ppppppcStack_158") (= "=") (cast_expression "(code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((uint)((int)pppppppcVar6 + 0x21) >> 0xc)" (( "(") (binary_expression "(uint)((int)pppppppcVar6 + 0x21) >> 0xc" (call_expression "(uint)((int)pppppppcVar6 + 0x21)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)pppppppcVar6 + 0x21)" (( "(") (binary_expression "(int)pppppppcVar6 + 0x21" (cast_expression "(int)pppppppcVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar6")) (+ "+") (number_literal "0x21")) () ")"))) (>> ">>") (number_literal "0xc")) () ")")))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);" (assignment_expression "pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)((int)ppppppcStack_158 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)ppppppcStack_158 + 1)" (( "(") (binary_expression "(int)ppppppcStack_158 + 1" (cast_expression "(int)ppppppcStack_158" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_158")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);" (assignment_expression "unaff_s2 = (code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)\n                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2)" (( "(") (binary_expression "(int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2" (cast_expression "(int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe)" (( "(") (binary_expression "(int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe" (binary_expression "(int)pppppppcVar6 + (int)ppppppcStack_158 * 10" (cast_expression "(int)pppppppcVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar6")) (+ "+") (binary_expression "(int)ppppppcStack_158 * 10" (cast_expression "(int)ppppppcStack_158" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_158")) (* "*") (number_literal "10"))) (+ "+") (number_literal "0xe")) () ")"))) (* "*") (number_literal "2")) () ")")))) (; ";")) (expression_statement "ppppppcStack_134 = (code ******)pppppppcVar6;" (assignment_expression "ppppppcStack_134 = (code ******)pppppppcVar6" (identifier "ppppppcStack_134") (= "=") (cast_expression "(code ******)pppppppcVar6" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar6"))) (; ";")) (expression_statement "puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);" (assignment_expression "puVar8 = (undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" (identifier "puVar8") (= "=") (cast_expression "(undefined4 *)\n                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2)" (parenthesized_expression "(**(code **)(puVar22 + -0x7f50))" (( "(") (pointer_expression "**(code **)(puVar22 + -0x7f50)" (* "*") (pointer_expression "*(code **)(puVar22 + -0x7f50)" (* "*") (cast_expression "(code **)(puVar22 + -0x7f50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + -0x7f50)" (( "(") (binary_expression "puVar22 + -0x7f50" (identifier "puVar22") (+ "+") (number_literal "-0x7f50")) () ")"))))) () ")")) (argument_list "((int)unaff_s2 >> 0x1f,unaff_s2)" (( "(") (binary_expression "(int)unaff_s2 >> 0x1f" (cast_expression "(int)unaff_s2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s2")) (>> ">>") (number_literal "0x1f")) (, ",") (identifier "unaff_s2") () ")"))))) (; ";")) (expression_statement "unaff_s3 = pppppppcVar6;" (assignment_expression "unaff_s3 = pppppppcVar6" (identifier "unaff_s3") (= "=") (identifier "pppppppcVar6")) (; ";")) (expression_statement "puStack_164 = puVar8;" (assignment_expression "puStack_164 = puVar8" (identifier "puStack_164") (= "=") (identifier "puVar8")) (; ";")) (if_statement "if (puVar8 != (undefined4 *)0x0) {\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }" (if "if") (parenthesized_expression "(puVar8 != (undefined4 *)0x0)" (( "(") (binary_expression "puVar8 != (undefined4 *)0x0" (identifier "puVar8") (!= "!=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);\n                      puVar8[1] = pppppppcVar21;\n                      if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }\n                      unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);\n                      if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }\n                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);\n                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);\n                      puVar22 = puStack_198;\n                      ppppppcStack_16c = (code ******)param_1;\n                      if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }\n                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);\n                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n                      param_4 = (code *******)0x3;\n                      pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);\n                      pppppppcVar24 = (code *******)local_6c;\n                      if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }\n                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);\n                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;\n                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;\n                      param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);\n                      puVar22 = puStack_198;\n                      if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }\nLAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);\n                      puVar22 = puStack_198;\n                      goto LAB_000d7648;\n                    }" ({ "{") (expression_statement "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" (( "(") (pointer_expression "**(code **)(puStack_198 + -0x7b20)" (* "*") (pointer_expression "*(code **)(puStack_198 + -0x7b20)" (* "*") (cast_expression "(code **)(puStack_198 + -0x7b20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7b20)" (( "(") (binary_expression "puStack_198 + -0x7b20" (identifier "puStack_198") (+ "+") (number_literal "-0x7b20")) () ")"))))) () ")")) (argument_list "(puVar8,0,unaff_s2)" (( "(") (identifier "puVar8") (, ",") (number_literal "0") (, ",") (identifier "unaff_s2") () ")"))) (; ";")) (expression_statement "puVar8[1] = pppppppcVar21;" (assignment_expression "puVar8[1] = pppppppcVar21" (subscript_expression "puVar8[1]" (identifier "puVar8") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "pppppppcVar21")) (; ";")) (if_statement "if ((code *******)0x1000 < pppppppcVar6) {\n                        unaff_s3 = (code *******)0x1000;\n                      }" (if "if") (parenthesized_expression "((code *******)0x1000 < pppppppcVar6)" (( "(") (binary_expression "(code *******)0x1000 < pppppppcVar6" (cast_expression "(code *******)0x1000" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1000")) (< "<") (identifier "pppppppcVar6")) () ")")) (compound_statement "{\n                        unaff_s3 = (code *******)0x1000;\n                      }" ({ "{") (expression_statement "unaff_s3 = (code *******)0x1000;" (assignment_expression "unaff_s3 = (code *******)0x1000" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)0x1000" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1000"))) (; ";")) (} "}"))) (expression_statement "unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);" (assignment_expression "unaff_s2 = (code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)\n                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7f50))" (( "(") (pointer_expression "**(code **)(puStack_198 + -0x7f50)" (* "*") (pointer_expression "*(code **)(puStack_198 + -0x7f50)" (* "*") (cast_expression "(code **)(puStack_198 + -0x7f50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7f50)" (( "(") (binary_expression "puStack_198 + -0x7f50" (identifier "puStack_198") (+ "+") (number_literal "-0x7f50")) () ")"))))) () ")")) (argument_list "(0,(int)unaff_s3 << 1)" (( "(") (number_literal "0") (, ",") (binary_expression "(int)unaff_s3 << 1" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (<< "<<") (number_literal "1")) () ")"))))) (; ";")) (if_statement "if (unaff_s2 == (code *******)0x0) {\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }" (if "if") (parenthesized_expression "(unaff_s2 == (code *******)0x0)" (( "(") (binary_expression "unaff_s2 == (code *******)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        param_2 = (code *******)&DAT_00000007;\nLAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);\n                        (*(code *)param_1)(unaff_s2);\n                        (*(code *)param_1)(puStack_164);\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        goto LAB_000d7644;\n                      }" ({ "{") (expression_statement "param_2 = (code *******)&DAT_00000007;" (assignment_expression "param_2 = (code *******)&DAT_00000007" (identifier "param_2") (= "=") (cast_expression "(code *******)&DAT_00000007" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (labeled_statement "LAB_000d799c:\n                        param_1 = *(code ********)(puStack_198 + -0x7fa8);" (statement_identifier "LAB_000d799c") (: ":") (expression_statement "param_1 = *(code ********)(puStack_198 + -0x7fa8);" (assignment_expression "param_1 = *(code ********)(puStack_198 + -0x7fa8)" (identifier "param_1") (= "=") (pointer_expression "*(code ********)(puStack_198 + -0x7fa8)" (* "*") (cast_expression "(code ********)(puStack_198 + -0x7fa8)" (( "(") (type_descriptor "code ********" (type_identifier "code") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(puStack_198 + -0x7fa8)" (( "(") (binary_expression "puStack_198 + -0x7fa8" (identifier "puStack_198") (+ "+") (number_literal "-0x7fa8")) () ")"))))) (; ";"))) (expression_statement "(*(code *)param_1)(unaff_s2);" (call_expression "(*(code *)param_1)(unaff_s2)" (parenthesized_expression "(*(code *)param_1)" (( "(") (pointer_expression "*(code *)param_1" (* "*") (cast_expression "(code *)param_1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";")) (expression_statement "(*(code *)param_1)(puStack_164);" (call_expression "(*(code *)param_1)(puStack_164)" (parenthesized_expression "(*(code *)param_1)" (( "(") (pointer_expression "*(code *)param_1" (* "*") (cast_expression "(code *)param_1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "param_1"))) () ")")) (argument_list "(puStack_164)" (( "(") (identifier "puStack_164") () ")"))) (; ";")) (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (goto_statement "goto LAB_000d7644;" (goto "goto") (statement_identifier "LAB_000d7644") (; ";")) (} "}"))) (expression_statement "param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);" (assignment_expression "param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc)" (identifier "param_1") (= "=") (cast_expression "(code *******)((uint)((int)param_1 + 0x22) >> 0xc)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((uint)((int)param_1 + 0x22) >> 0xc)" (( "(") (binary_expression "(uint)((int)param_1 + 0x22) >> 0xc" (call_expression "(uint)((int)param_1 + 0x22)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)param_1 + 0x22)" (( "(") (binary_expression "(int)param_1 + 0x22" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "0x22")) () ")"))) (>> ">>") (number_literal "0xc")) () ")")))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);" (assignment_expression "pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(uint)(param_1 < pppppppcVar21)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(uint)(param_1 < pppppppcVar21)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(param_1 < pppppppcVar21)" (( "(") (binary_expression "param_1 < pppppppcVar21" (identifier "param_1") (< "<") (identifier "pppppppcVar21")) () ")"))))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (expression_statement "ppppppcStack_16c = (code ******)param_1;" (assignment_expression "ppppppcStack_16c = (code ******)param_1" (identifier "ppppppcStack_16c") (= "=") (cast_expression "(code ******)param_1" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_1"))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) {\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        puVar8 = puStack_164 + (int)param_1 * 5;\n                        pppppcStack_148 = (code *****)&pppppcStack_120;\n                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);\n                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);\n                        pppppppcVar24 = param_1;\n                        uStack_160 = uVar20;\n                        ppppppcStack_13c = (code ******)pppppppcVar25;\n                        do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);\n                      }" ({ "{") (expression_statement "puVar8 = puStack_164 + (int)param_1 * 5;" (assignment_expression "puVar8 = puStack_164 + (int)param_1 * 5" (identifier "puVar8") (= "=") (binary_expression "puStack_164 + (int)param_1 * 5" (identifier "puStack_164") (+ "+") (binary_expression "(int)param_1 * 5" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (* "*") (number_literal "5")))) (; ";")) (expression_statement "pppppcStack_148 = (code *****)&pppppcStack_120;" (assignment_expression "pppppcStack_148 = (code *****)&pppppcStack_120" (identifier "pppppcStack_148") (= "=") (cast_expression "(code *****)&pppppcStack_120" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (pointer_expression "&pppppcStack_120" (& "&") (identifier "pppppcStack_120")))) (; ";")) (expression_statement "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);" (assignment_expression "pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" (identifier "pcStack_14c") (= "=") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7c94) + -0x2574)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7c94) + -0x2574" (pointer_expression "*(int *)(puStack_198 + -0x7c94)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7c94)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7c94)" (( "(") (binary_expression "puStack_198 + -0x7c94" (identifier "puStack_198") (+ "+") (number_literal "-0x7c94")) () ")")))) (+ "+") (number_literal "-0x2574")) () ")")))) (; ";")) (expression_statement "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);" (assignment_expression "pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" (identifier "pcStack_144") (= "=") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7d50) + -0x7240)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7d50) + -0x7240" (pointer_expression "*(int *)(puStack_198 + -0x7d50)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7d50)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7d50)" (( "(") (binary_expression "puStack_198 + -0x7d50" (identifier "puStack_198") (+ "+") (number_literal "-0x7d50")) () ")")))) (+ "+") (number_literal "-0x7240")) () ")")))) (; ";")) (expression_statement "pppppppcVar24 = param_1;" (assignment_expression "pppppppcVar24 = param_1" (identifier "pppppppcVar24") (= "=") (identifier "param_1")) (; ";")) (expression_statement "uStack_160 = uVar20;" (assignment_expression "uStack_160 = uVar20" (identifier "uStack_160") (= "=") (identifier "uVar20")) (; ";")) (expression_statement "ppppppcStack_13c = (code ******)pppppppcVar25;" (assignment_expression "ppppppcStack_13c = (code ******)pppppppcVar25" (identifier "ppppppcStack_13c") (= "=") (cast_expression "(code ******)pppppppcVar25" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar25"))) (; ";")) (do_statement "do {\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);" (do "do") (compound_statement "{\n                          ppppppcStack_16c = (code ******)pppppppcVar24;\n                          param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          if (param_2 != (code *******)0x0) goto LAB_000d799c;\n                          ppppppcStack_184 = ppppppcStack_11c + 1;\n                          if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }\n                          puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);\n                          iStack_118 = iStack_118 + 1;\n                          puStack_150 = puVar9;\n                          ppppppcStack_11c = ppppppcStack_184;\n                          if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }\n                          puVar8[6] = iStack_118;\n                          puVar8[5] = pppppcStack_12c;\n                          puVar8[3] = puStack_150;\n                          puVar8[4] = ppppppcStack_11c;\n                          puVar8 = puVar8 + 5;\n                          uVar20 = uStack_160;\n                          pppppppcVar25 = (code *******)ppppppcStack_13c;\n                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);\n                        }" ({ "{") (expression_statement "ppppppcStack_16c = (code ******)pppppppcVar24;" (assignment_expression "ppppppcStack_16c = (code ******)pppppppcVar24" (identifier "ppppppcStack_16c") (= "=") (cast_expression "(code ******)pppppppcVar24" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar24"))) (; ";")) (expression_statement "param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);" (assignment_expression "param_2 = (code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148)" (parenthesized_expression "(*pcStack_14c)" (( "(") (pointer_expression "*pcStack_14c" (* "*") (identifier "pcStack_14c")) () ")")) (argument_list "(uStack_160,ppppppcStack_16c,pppppcStack_148)" (( "(") (identifier "uStack_160") (, ",") (identifier "ppppppcStack_16c") (, ",") (identifier "pppppcStack_148") () ")"))))) (; ";")) (expression_statement "uVar20 = uStack_160;" (assignment_expression "uVar20 = uStack_160" (identifier "uVar20") (= "=") (identifier "uStack_160")) (; ";")) (expression_statement "pppppppcVar25 = (code *******)ppppppcStack_13c;" (assignment_expression "pppppppcVar25 = (code *******)ppppppcStack_13c" (identifier "pppppppcVar25") (= "=") (cast_expression "(code *******)ppppppcStack_13c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_13c"))) (; ";")) (if_statement "if (param_2 != (code *******)0x0) goto LAB_000d799c;" (if "if") (parenthesized_expression "(param_2 != (code *******)0x0)" (( "(") (binary_expression "param_2 != (code *******)0x0" (identifier "param_2") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d799c;" (goto "goto") (statement_identifier "LAB_000d799c") (; ";"))) (expression_statement "ppppppcStack_184 = ppppppcStack_11c + 1;" (assignment_expression "ppppppcStack_184 = ppppppcStack_11c + 1" (identifier "ppppppcStack_184") (= "=") (binary_expression "ppppppcStack_11c + 1" (identifier "ppppppcStack_11c") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (ppppppcStack_16c == ppppppcStack_158) {\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }\n                          else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" (if "if") (parenthesized_expression "(ppppppcStack_16c == ppppppcStack_158)" (( "(") (binary_expression "ppppppcStack_16c == ppppppcStack_158" (identifier "ppppppcStack_16c") (== "==") (identifier "ppppppcStack_158")) () ")")) (compound_statement "{\n                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);\n                          }" ({ "{") (expression_statement "unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);" (assignment_expression "unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118)" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)((int)ppppppcStack_134 - iStack_118)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)ppppppcStack_134 - iStack_118)" (( "(") (binary_expression "(int)ppppppcStack_134 - iStack_118" (cast_expression "(int)ppppppcStack_134" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_134")) (- "-") (identifier "iStack_118")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" (else "else") (compound_statement "{\n                            unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);\n                          }" ({ "{") (expression_statement "unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);" (assignment_expression "unaff_s3 = (code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)\n                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2)" (( "(") (binary_expression "(int)pppppcStack_120 - (int)ppppppcStack_184 >> 2" (binary_expression "(int)pppppcStack_120 - (int)ppppppcStack_184" (cast_expression "(int)pppppcStack_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppcStack_120")) (- "-") (cast_expression "(int)ppppppcStack_184" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_184"))) (>> ">>") (number_literal "2")) () ")")))) (; ";")) (} "}")))) (expression_statement "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);" (assignment_expression "puVar9 = (undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" (identifier "puVar9") (= "=") (cast_expression "(undefined2 *)\n                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2)" (( "(") (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2" (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14 + 8" (binary_expression "(int)puStack_164 + puStack_164[1] * 0x14" (cast_expression "(int)puStack_164" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puStack_164")) (+ "+") (binary_expression "puStack_164[1] * 0x14" (subscript_expression "puStack_164[1]" (identifier "puStack_164") ([ "[") (number_literal "1") (] "]")) (* "*") (number_literal "0x14"))) (+ "+") (number_literal "8")) (+ "+") (binary_expression "iStack_118 * 2" (identifier "iStack_118") (* "*") (number_literal "2"))) () ")")))) (; ";")) (expression_statement "iStack_118 = iStack_118 + 1;" (assignment_expression "iStack_118 = iStack_118 + 1" (identifier "iStack_118") (= "=") (binary_expression "iStack_118 + 1" (identifier "iStack_118") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puStack_150 = puVar9;" (assignment_expression "puStack_150 = puVar9" (identifier "puStack_150") (= "=") (identifier "puVar9")) (; ";")) (expression_statement "ppppppcStack_11c = ppppppcStack_184;" (assignment_expression "ppppppcStack_11c = ppppppcStack_184" (identifier "ppppppcStack_11c") (= "=") (identifier "ppppppcStack_184")) (; ";")) (if_statement "if ((int)unaff_s3 < 1) {\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }\n                          else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" (if "if") (parenthesized_expression "((int)unaff_s3 < 1)" (( "(") (binary_expression "(int)unaff_s3 < 1" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n                            pppppcStack_12c = (code *****)0x0;\n                            uStack_128 = uStack_128 & 0xffffffff;\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            param_1 = (code *******)0x1;\n                            puVar22 = puStack_198;\nLAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;\n                            param_2 = (code *******)&uStack_128;\n                            pppppppcVar21 = (code *******)&pppppcStack_12c;\n                            do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);\n                          }" ({ "{") (expression_statement "pppppcStack_12c = (code *****)0x0;" (assignment_expression "pppppcStack_12c = (code *****)0x0" (identifier "pppppcStack_12c") (= "=") (cast_expression "(code *****)0x0" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uStack_128 = uStack_128 & 0xffffffff;" (assignment_expression "uStack_128 = uStack_128 & 0xffffffff" (identifier "uStack_128") (= "=") (binary_expression "uStack_128 & 0xffffffff" (identifier "uStack_128") (& "&") (number_literal "0xffffffff"))) (; ";")) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" (( "(") (pointer_expression "**(code **)(puStack_198 + -0x7b20)" (* "*") (pointer_expression "*(code **)(puStack_198 + -0x7b20)" (* "*") (cast_expression "(code **)(puStack_198 + -0x7b20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7b20)" (( "(") (binary_expression "puStack_198 + -0x7b20" (identifier "puStack_198") (+ "+") (number_literal "-0x7b20")) () ")"))))) () ")")) (argument_list "(apppppcStack_114,0,0x68)" (( "(") (identifier "apppppcStack_114") (, ",") (number_literal "0") (, ",") (number_literal "0x68") () ")"))) (; ";")) (expression_statement "param_1 = (code *******)0x1;" (assignment_expression "param_1 = (code *******)0x1" (identifier "param_1") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (labeled_statement "LAB_000d78d0:\n                            unaff_s5 = (code *******)apppppcStack_114;" (statement_identifier "LAB_000d78d0") (: ":") (expression_statement "unaff_s5 = (code *******)apppppcStack_114;" (assignment_expression "unaff_s5 = (code *******)apppppcStack_114" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)apppppcStack_114" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "apppppcStack_114"))) (; ";"))) (expression_statement "param_2 = (code *******)&uStack_128;" (assignment_expression "param_2 = (code *******)&uStack_128" (identifier "param_2") (= "=") (cast_expression "(code *******)&uStack_128" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&uStack_128" (& "&") (identifier "uStack_128")))) (; ";")) (expression_statement "pppppppcVar21 = (code *******)&pppppcStack_12c;" (assignment_expression "pppppppcVar21 = (code *******)&pppppcStack_12c" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)&pppppcStack_12c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&pppppcStack_12c" (& "&") (identifier "pppppcStack_12c")))) (; ";")) (do_statement "do {\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            } while (param_1 < &DAT_0000000d);" (do "do") (compound_statement "{\n                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }\n                              param_1 = (code *******)((int)param_1 + 1);\n                            }" ({ "{") (if_statement "if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }" (if "if") (parenthesized_expression "(((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0)" (( "(") (binary_expression "((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0" (parenthesized_expression "((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U)" (( "(") (binary_expression "(int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U" (binary_expression "(int)unaff_s3 >> ((uint)param_1 & 0x1f)" (cast_expression "(int)unaff_s3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s3")) (>> ">>") (parenthesized_expression "((uint)param_1 & 0x1f)" (( "(") (binary_expression "(uint)param_1 & 0x1f" (cast_expression "(uint)param_1" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_1")) (& "&") (number_literal "0x1f")) () ")"))) (& "&") (number_literal "1U")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);\n                                param_4 = param_2;\n                                (*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);\n                                puVar22 = puStack_198;\n                              }" ({ "{") (expression_statement "uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2)" (identifier "uStack_1a0") (= "=") (call_expression "CONCAT44(pppppppcVar21,unaff_s2)" (identifier "CONCAT44") (argument_list "(pppppppcVar21,unaff_s2)" (( "(") (identifier "pppppppcVar21") (, ",") (identifier "unaff_s2") () ")")))) (; ";")) (expression_statement "param_4 = param_2;" (assignment_expression "param_4 = param_2" (identifier "param_4") (= "=") (identifier "param_2")) (; ";")) (expression_statement "(*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2]);" (call_expression "(*pcStack_144)(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2])" (parenthesized_expression "(*pcStack_144)" (( "(") (pointer_expression "*pcStack_144" (* "*") (identifier "pcStack_144")) () ")")) (argument_list "(ppppppcStack_184,\n                                               apppppcStack_114[(int)param_1 * 2 + 1],\n                                               unaff_s5[(int)param_1 * 2])" (( "(") (identifier "ppppppcStack_184") (, ",") (subscript_expression "apppppcStack_114[(int)param_1 * 2 + 1]" (identifier "apppppcStack_114") ([ "[") (binary_expression "(int)param_1 * 2 + 1" (binary_expression "(int)param_1 * 2" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (, ",") (subscript_expression "unaff_s5[(int)param_1 * 2]" (identifier "unaff_s5") ([ "[") (binary_expression "(int)param_1 * 2" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (* "*") (number_literal "2")) (] "]")) () ")"))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (} "}"))) (expression_statement "param_1 = (code *******)((int)param_1 + 1);" (assignment_expression "param_1 = (code *******)((int)param_1 + 1)" (identifier "param_1") (= "=") (cast_expression "(code *******)((int)param_1 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1 + 1)" (( "(") (binary_expression "(int)param_1 + 1" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_1 < &DAT_0000000d)" (( "(") (binary_expression "param_1 < &DAT_0000000d" (identifier "param_1") (< "<") (pointer_expression "&DAT_0000000d" (& "&") (identifier "DAT_0000000d"))) () ")")) (; ";")) (} "}")) (else_clause "else {\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" (else "else") (compound_statement "{\n                            pppppppcVar24 = (code *******)0x0;\n                            puVar13 = puVar9;\n                            do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);\n                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);\n                            pcVar3 = pcStack_144;\n                            unaff_s5 = (code *******)&pppppcStack_12c;\n                            param_2 = (code *******)0x0;\n                            puVar22 = puStack_198;\n                            puStack_138 = puVar8;\n                            do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);\n                            param_1 = (code *******)(uVar20 + 1);\n                            puVar8 = puStack_138;\n                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;\n                          }" ({ "{") (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar13 = puVar9;" (assignment_expression "puVar13 = puVar9" (identifier "puVar13") (= "=") (identifier "puVar9")) (; ";")) (do_statement "do {\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            } while (pppppppcVar24 != unaff_s3);" (do "do") (compound_statement "{\n                              *puVar13 = (short)pppppppcVar24;\n                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);\n                              puVar13 = puVar13 + 1;\n                            }" ({ "{") (expression_statement "*puVar13 = (short)pppppppcVar24;" (assignment_expression "*puVar13 = (short)pppppppcVar24" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (cast_expression "(short)pppppppcVar24" (( "(") (type_descriptor "short" (sized_type_specifier "short" (short "short"))) () ")") (identifier "pppppppcVar24"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1)" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)((int)pppppppcVar24 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)pppppppcVar24 + 1)" (( "(") (binary_expression "(int)pppppppcVar24 + 1" (cast_expression "(int)pppppppcVar24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar24")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "puVar13 = puVar13 + 1;" (assignment_expression "puVar13 = puVar13 + 1" (identifier "puVar13") (= "=") (binary_expression "puVar13 + 1" (identifier "puVar13") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pppppppcVar24 != unaff_s3)" (( "(") (binary_expression "pppppppcVar24 != unaff_s3" (identifier "pppppppcVar24") (!= "!=") (identifier "unaff_s3")) () ")")) (; ";")) (expression_statement "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);" (call_expression "(**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68)" (parenthesized_expression "(**(code **)(puStack_198 + -0x7b20))" (( "(") (pointer_expression "**(code **)(puStack_198 + -0x7b20)" (* "*") (pointer_expression "*(code **)(puStack_198 + -0x7b20)" (* "*") (cast_expression "(code **)(puStack_198 + -0x7b20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7b20)" (( "(") (binary_expression "puStack_198 + -0x7b20" (identifier "puStack_198") (+ "+") (number_literal "-0x7b20")) () ")"))))) () ")")) (argument_list "(apppppcStack_114,0,0x68)" (( "(") (identifier "apppppcStack_114") (, ",") (number_literal "0") (, ",") (number_literal "0x68") () ")"))) (; ";")) (expression_statement "pcVar3 = pcStack_144;" (assignment_expression "pcVar3 = pcStack_144" (identifier "pcVar3") (= "=") (identifier "pcStack_144")) (; ";")) (expression_statement "unaff_s5 = (code *******)&pppppcStack_12c;" (assignment_expression "unaff_s5 = (code *******)&pppppcStack_12c" (identifier "unaff_s5") (= "=") (cast_expression "(code *******)&pppppcStack_12c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&pppppcStack_12c" (& "&") (identifier "pppppcStack_12c")))) (; ";")) (expression_statement "param_2 = (code *******)0x0;" (assignment_expression "param_2 = (code *******)0x0" (identifier "param_2") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (expression_statement "puStack_138 = puVar8;" (assignment_expression "puStack_138 = puVar8" (identifier "puStack_138") (= "=") (identifier "puVar8")) (; ";")) (do_statement "do {\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            } while (param_2 != unaff_s3);" (do "do") (compound_statement "{\n                              pppppcStack_12c = (code *****)0x1;\n                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);\n                              if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }\n                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;\n                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;\n                              param_2 = (code *******)((int)param_2 + 1);\n                              puVar9 = puVar9 + 1;\n                            }" ({ "{") (expression_statement "pppppcStack_12c = (code *****)0x1;" (assignment_expression "pppppcStack_12c = (code *****)0x1" (identifier "pppppcStack_12c") (= "=") (cast_expression "(code *****)0x1" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);" (assignment_expression "uStack_128 = CONCAT44(puVar9,uStack_128._4_4_)" (identifier "uStack_128") (= "=") (call_expression "CONCAT44(puVar9,uStack_128._4_4_)" (identifier "CONCAT44") (argument_list "(puVar9,uStack_128._4_4_)" (( "(") (identifier "puVar9") (, ",") (field_expression "uStack_128._4_4_" (identifier "uStack_128") (. ".") (field_identifier "_4_4_")) () ")")))) (; ";")) (if_statement "if (((uint)param_2 & 1) == 0) {\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }\n                              else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" (if "if") (parenthesized_expression "(((uint)param_2 & 1) == 0)" (( "(") (binary_expression "((uint)param_2 & 1) == 0" (parenthesized_expression "((uint)param_2 & 1)" (( "(") (binary_expression "(uint)param_2 & 1" (cast_expression "(uint)param_2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "param_2")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                                uVar20 = 0;\n                                iVar23 = 0;\n                              }" ({ "{") (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" (identifier "uVar20") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar23 = 0;" (assignment_expression "iVar23 = 0" (identifier "iVar23") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" (else "else") (compound_statement "{\n                                pppppppcVar21 = (code *******)apppppcStack_114;\n                                uVar20 = 0;\n                                do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);\n                                iVar23 = uVar20 * 8;\n                                puVar22 = puStack_198;\n                              }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)apppppcStack_114;" (assignment_expression "pppppppcVar21 = (code *******)apppppcStack_114" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)apppppcStack_114" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "apppppcStack_114"))) (; ";")) (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" (identifier "uVar20") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);" (do "do") (compound_statement "{\n                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);\n                                  param_4 = (code *******)&uStack_128;\n                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);\n                                  uVar20 = uVar20 + 1;\n                                  pppppppcVar21 = pppppppcVar21 + 2;\n                                }" ({ "{") (expression_statement "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);" (assignment_expression "uStack_1a0 = CONCAT44(unaff_s5,unaff_s2)" (identifier "uStack_1a0") (= "=") (call_expression "CONCAT44(unaff_s5,unaff_s2)" (identifier "CONCAT44") (argument_list "(unaff_s5,unaff_s2)" (( "(") (identifier "unaff_s5") (, ",") (identifier "unaff_s2") () ")")))) (; ";")) (expression_statement "param_4 = (code *******)&uStack_128;" (assignment_expression "param_4 = (code *******)&uStack_128" (identifier "param_4") (= "=") (cast_expression "(code *******)&uStack_128" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&uStack_128" (& "&") (identifier "uStack_128")))) (; ";")) (expression_statement "(*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);" (call_expression "(*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21)" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21)" (( "(") (identifier "ppppppcStack_184") (, ",") (subscript_expression "pppppppcVar21[1]" (identifier "pppppppcVar21") ([ "[") (number_literal "1") (] "]")) (, ",") (pointer_expression "*pppppppcVar21" (* "*") (identifier "pppppppcVar21")) () ")"))) (; ";")) (expression_statement "uVar20 = uVar20 + 1;" (assignment_expression "uVar20 = uVar20 + 1" (identifier "uVar20") (= "=") (binary_expression "uVar20 + 1" (identifier "uVar20") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pppppppcVar21 = pppppppcVar21 + 2;" (assignment_expression "pppppppcVar21 = pppppppcVar21 + 2" (identifier "pppppppcVar21") (= "=") (binary_expression "pppppppcVar21 + 2" (identifier "pppppppcVar21") (+ "+") (number_literal "2"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0)" (( "(") (binary_expression "((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0" (parenthesized_expression "((int)param_2 >> (uVar20 & 0x1f) & 1U)" (( "(") (binary_expression "(int)param_2 >> (uVar20 & 0x1f) & 1U" (binary_expression "(int)param_2 >> (uVar20 & 0x1f)" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (>> ">>") (parenthesized_expression "(uVar20 & 0x1f)" (( "(") (binary_expression "uVar20 & 0x1f" (identifier "uVar20") (& "&") (number_literal "0x1f")) () ")"))) (& "&") (number_literal "1U")) () ")")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "iVar23 = uVar20 * 8;" (assignment_expression "iVar23 = uVar20 * 8" (identifier "iVar23") (= "=") (binary_expression "uVar20 * 8" (identifier "uVar20") (* "*") (number_literal "8"))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (} "}")))) (expression_statement "*(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_\n                              ;" (assignment_expression "*(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_" (pointer_expression "*(code *******)((int)apppppcStack_114 + iVar23 + 4)" (* "*") (cast_expression "(code *******)((int)apppppcStack_114 + iVar23 + 4)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)apppppcStack_114 + iVar23 + 4)" (( "(") (binary_expression "(int)apppppcStack_114 + iVar23 + 4" (binary_expression "(int)apppppcStack_114 + iVar23" (cast_expression "(int)apppppcStack_114" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apppppcStack_114")) (+ "+") (identifier "iVar23")) (+ "+") (number_literal "4")) () ")")))) (= "=") (field_expression "uStack_128._0_4_" (identifier "uStack_128") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "*(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;" (assignment_expression "*(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c" (pointer_expression "*(code ******)((int)apppppcStack_114 + iVar23)" (* "*") (cast_expression "(code ******)((int)apppppcStack_114 + iVar23)" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (parenthesized_expression "((int)apppppcStack_114 + iVar23)" (( "(") (binary_expression "(int)apppppcStack_114 + iVar23" (cast_expression "(int)apppppcStack_114" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "apppppcStack_114")) (+ "+") (identifier "iVar23")) () ")")))) (= "=") (identifier "pppppcStack_12c")) (; ";")) (expression_statement "param_2 = (code *******)((int)param_2 + 1);" (assignment_expression "param_2 = (code *******)((int)param_2 + 1)" (identifier "param_2") (= "=") (cast_expression "(code *******)((int)param_2 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_2 + 1)" (( "(") (binary_expression "(int)param_2 + 1" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "puVar9 = puVar9 + 1;" (assignment_expression "puVar9 = puVar9 + 1" (identifier "puVar9") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_2 != unaff_s3)" (( "(") (binary_expression "param_2 != unaff_s3" (identifier "param_2") (!= "!=") (identifier "unaff_s3")) () ")")) (; ";")) (expression_statement "param_1 = (code *******)(uVar20 + 1);" (assignment_expression "param_1 = (code *******)(uVar20 + 1)" (identifier "param_1") (= "=") (cast_expression "(code *******)(uVar20 + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(uVar20 + 1)" (( "(") (binary_expression "uVar20 + 1" (identifier "uVar20") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "puVar8 = puStack_138;" (assignment_expression "puVar8 = puStack_138" (identifier "puVar8") (= "=") (identifier "puStack_138")) (; ";")) (if_statement "if (param_1 < &DAT_0000000d) goto LAB_000d78d0;" (if "if") (parenthesized_expression "(param_1 < &DAT_0000000d)" (( "(") (binary_expression "param_1 < &DAT_0000000d" (identifier "param_1") (< "<") (pointer_expression "&DAT_0000000d" (& "&") (identifier "DAT_0000000d"))) () ")")) (goto_statement "goto LAB_000d78d0;" (goto "goto") (statement_identifier "LAB_000d78d0") (; ";"))) (} "}")))) (expression_statement "puVar8[6] = iStack_118;" (assignment_expression "puVar8[6] = iStack_118" (subscript_expression "puVar8[6]" (identifier "puVar8") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "iStack_118")) (; ";")) (expression_statement "puVar8[5] = pppppcStack_12c;" (assignment_expression "puVar8[5] = pppppcStack_12c" (subscript_expression "puVar8[5]" (identifier "puVar8") ([ "[") (number_literal "5") (] "]")) (= "=") (identifier "pppppcStack_12c")) (; ";")) (expression_statement "puVar8[3] = puStack_150;" (assignment_expression "puVar8[3] = puStack_150" (subscript_expression "puVar8[3]" (identifier "puVar8") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "puStack_150")) (; ";")) (expression_statement "puVar8[4] = ppppppcStack_11c;" (assignment_expression "puVar8[4] = ppppppcStack_11c" (subscript_expression "puVar8[4]" (identifier "puVar8") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "ppppppcStack_11c")) (; ";")) (expression_statement "puVar8 = puVar8 + 5;" (assignment_expression "puVar8 = puVar8 + 5" (identifier "puVar8") (= "=") (binary_expression "puVar8 + 5" (identifier "puVar8") (+ "+") (number_literal "5"))) (; ";")) (expression_statement "uVar20 = uStack_160;" (assignment_expression "uVar20 = uStack_160" (identifier "uVar20") (= "=") (identifier "uStack_160")) (; ";")) (expression_statement "pppppppcVar25 = (code *******)ppppppcStack_13c;" (assignment_expression "pppppppcVar25 = (code *******)ppppppcStack_13c" (identifier "pppppppcVar25") (= "=") (cast_expression "(code *******)ppppppcStack_13c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_13c"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);" (assignment_expression "pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1)" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)((int)ppppppcStack_16c + 1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)ppppppcStack_16c + 1)" (( "(") (binary_expression "(int)ppppppcStack_16c + 1" (cast_expression "(int)ppppppcStack_16c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_16c")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((int)ppppppcStack_16c < (int)ppppppcStack_158)" (( "(") (binary_expression "(int)ppppppcStack_16c < (int)ppppppcStack_158" (cast_expression "(int)ppppppcStack_16c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_16c")) (< "<") (cast_expression "(int)ppppppcStack_158" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_158"))) () ")")) (; ";")) (} "}"))) (expression_statement "(**(code **)(puVar22 + -0x7fa8))(unaff_s2);" (call_expression "(**(code **)(puVar22 + -0x7fa8))(unaff_s2)" (parenthesized_expression "(**(code **)(puVar22 + -0x7fa8))" (( "(") (pointer_expression "**(code **)(puVar22 + -0x7fa8)" (* "*") (pointer_expression "*(code **)(puVar22 + -0x7fa8)" (* "*") (cast_expression "(code **)(puVar22 + -0x7fa8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar22 + -0x7fa8)" (( "(") (binary_expression "puVar22 + -0x7fa8" (identifier "puVar22") (+ "+") (number_literal "-0x7fa8")) () ")"))))) () ")")) (argument_list "(unaff_s2)" (( "(") (identifier "unaff_s2") () ")"))) (; ";")) (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" (identifier "uStack_1a0") (= "=") (call_expression "CONCAT44(1,uStack_1a0._4_4_)" (identifier "CONCAT44") (argument_list "(1,uStack_1a0._4_4_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_1a0._4_4_" (identifier "uStack_1a0") (. ".") (field_identifier "_4_4_")) () ")")))) (; ";")) (expression_statement "param_4 = (code *******)0x3;" (assignment_expression "param_4 = (code *******)0x3" (identifier "param_4") (= "=") (cast_expression "(code *******)0x3" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x3"))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)\n                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                               (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d7c")) () ")")))) () ")")) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (identifier "uVar20") (, ",") (identifier "ppppppcStack_18c") (, ",") (identifier "ppppppcStack_188") () ")"))))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)local_6c;" (assignment_expression "pppppppcVar24 = (code *******)local_6c" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)local_6c" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "local_6c"))) (; ";")) (if_statement "if (pppppppcVar6 != (code *******)0x0) {\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" (if "if") (parenthesized_expression "(pppppppcVar6 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar6 != (code *******)0x0" (identifier "pppppppcVar6") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        pppppppcVar24 = unaff_s5;\n                        puVar22 = puStack_198;\n                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;\n                        goto LAB_000d8010;\n                      }" ({ "{") (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;" (if "if") (parenthesized_expression "(pppppppcVar6 == (code *******)&DAT_00000005)" (( "(") (binary_expression "pppppppcVar6 == (code *******)&DAT_00000005" (identifier "pppppppcVar6") (== "==") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) () ")")) (goto_statement "goto LAB_000d765c;" (goto "goto") (statement_identifier "LAB_000d765c") (; ";"))) (goto_statement "goto LAB_000d8010;" (goto "goto") (statement_identifier "LAB_000d8010") (; ";")) (} "}"))) (expression_statement "ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);" (assignment_expression "ppppppcStack_184 = *(code *******)(iStack_154 + 0x60)" (identifier "ppppppcStack_184") (= "=") (pointer_expression "*(code *******)(iStack_154 + 0x60)" (* "*") (cast_expression "(code *******)(iStack_154 + 0x60)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iStack_154 + 0x60)" (( "(") (binary_expression "iStack_154 + 0x60" (identifier "iStack_154") (+ "+") (number_literal "0x60")) () ")"))))) (; ";")) (expression_statement "*(code *******)(iStack_154 + 0x80) = ppppppcStack_168;" (assignment_expression "*(code *******)(iStack_154 + 0x80) = ppppppcStack_168" (pointer_expression "*(code *******)(iStack_154 + 0x80)" (* "*") (cast_expression "(code *******)(iStack_154 + 0x80)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iStack_154 + 0x80)" (( "(") (binary_expression "iStack_154 + 0x80" (identifier "iStack_154") (+ "+") (number_literal "0x80")) () ")")))) (= "=") (identifier "ppppppcStack_168")) (; ";")) (expression_statement "uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;" (assignment_expression "uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e" (identifier "uStack_160") (= "=") (binary_expression "(uint)((int)local_6c << 0x1c) >> 0x1e" (call_expression "(uint)((int)local_6c << 0x1c)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)local_6c << 0x1c)" (( "(") (binary_expression "(int)local_6c << 0x1c" (cast_expression "(int)local_6c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_6c")) (<< "<<") (number_literal "0x1c")) () ")"))) (>> ">>") (number_literal "0x1e"))) (; ";")) (expression_statement "param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160);" (assignment_expression "param_2 = (code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                          (*(undefined4 *)(uVar20 + 8),uStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xa38")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 8),uStack_160)" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 8)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 8)" (( "(") (binary_expression "uVar20 + 8" (identifier "uVar20") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "uStack_160") () ")"))))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if (param_2 == (code *******)0x0) {\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }" (if "if") (parenthesized_expression "(param_2 == (code *******)0x0)" (( "(") (binary_expression "param_2 == (code *******)0x0" (identifier "param_2") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                        ppppppcStack_16c = ppppppcStack_15c;\n                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);\n                        unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);\n                        param_2 = unaff_s2;\n                        puVar22 = puStack_198;\n                        if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }\n                      }" ({ "{") (expression_statement "ppppppcStack_16c = ppppppcStack_15c;" (assignment_expression "ppppppcStack_16c = ppppppcStack_15c" (identifier "ppppppcStack_16c") (= "=") (identifier "ppppppcStack_15c")) (; ";")) (expression_statement "uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);" (assignment_expression "uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c)" (identifier "uStack_128") (= "=") (binary_expression "ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c)" (call_expression "ZEXT48(ppppppcStack_140)" (identifier "ZEXT48") (argument_list "(ppppppcStack_140)" (( "(") (identifier "ppppppcStack_140") () ")"))) (* "*") (call_expression "ZEXT48(ppppppcStack_15c)" (identifier "ZEXT48") (argument_list "(ppppppcStack_15c)" (( "(") (identifier "ppppppcStack_15c") () ")"))))) (; ";")) (expression_statement "unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);" (assignment_expression "unaff_s2 = (code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" (identifier "unaff_s2") (= "=") (cast_expression "(code *******)\n                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))\n                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa6c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa6c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xa6c")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 4),&pppppcStack_120)" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 4)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 4)" (( "(") (binary_expression "uVar20 + 4" (identifier "uVar20") (+ "+") (number_literal "4")) () ")")))) (, ",") (pointer_expression "&pppppcStack_120" (& "&") (identifier "pppppcStack_120")) () ")"))))) (; ";")) (expression_statement "param_2 = unaff_s2;" (assignment_expression "param_2 = unaff_s2" (identifier "param_2") (= "=") (identifier "unaff_s2")) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if (unaff_s2 == (code *******)0x0) {\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }" (if "if") (parenthesized_expression "(unaff_s2 == (code *******)0x0)" (( "(") (binary_expression "unaff_s2 == (code *******)0x0" (identifier "unaff_s2") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }\n                          puVar8 = puStack_164;\n                          pppppppcVar21 = (code *******)0x0;\n                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);\n                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);\n                          iVar23 = *(int *)(puStack_198 + -0x7dc8);\n                          puVar22 = puStack_198;\n                          do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);\n                        }" ({ "{") (if_statement "if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))) {\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }" (if "if") (parenthesized_expression "(((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_))))" (( "(") (binary_expression "((int)pppppcStack_120 < (int)uStack_128._0_4_) ||\n                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))" (parenthesized_expression "((int)pppppcStack_120 < (int)uStack_128._0_4_)" (( "(") (binary_expression "(int)pppppcStack_120 < (int)uStack_128._0_4_" (cast_expression "(int)pppppcStack_120" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppcStack_120")) (< "<") (cast_expression "(int)uStack_128._0_4_" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (field_expression "uStack_128._0_4_" (identifier "uStack_128") (. ".") (field_identifier "_0_4_")))) () ")")) (|| "||") (parenthesized_expression "((uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)))" (( "(") (parenthesized_expression "(uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_))" (( "(") (binary_expression "uStack_128._0_4_ == (code ******)pppppcStack_120 &&\n                              (ppppppcStack_11c < uStack_128._4_4_)" (binary_expression "uStack_128._0_4_ == (code ******)pppppcStack_120" (field_expression "uStack_128._0_4_" (identifier "uStack_128") (. ".") (field_identifier "_0_4_")) (== "==") (cast_expression "(code ******)pppppcStack_120" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppcStack_120"))) (&& "&&") (parenthesized_expression "(ppppppcStack_11c < uStack_128._4_4_)" (( "(") (binary_expression "ppppppcStack_11c < uStack_128._4_4_" (identifier "ppppppcStack_11c") (< "<") (field_expression "uStack_128._4_4_" (identifier "uStack_128") (. ".") (field_identifier "_4_4_"))) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);\n                          }" ({ "{") (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))\n                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xac4)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xac4" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xac4")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 4),5,&uStack_128)" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 4)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 4)" (( "(") (binary_expression "uVar20 + 4" (identifier "uVar20") (+ "+") (number_literal "4")) () ")")))) (, ",") (number_literal "5") (, ",") (pointer_expression "&uStack_128" (& "&") (identifier "uStack_128")) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar8 = puStack_164;" (assignment_expression "puVar8 = puStack_164" (identifier "puVar8") (= "=") (identifier "puStack_164")) (; ";")) (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "unaff_s3 = (code *******)(ppppppcStack_15c + 6);" (assignment_expression "unaff_s3 = (code *******)(ppppppcStack_15c + 6)" (identifier "unaff_s3") (= "=") (cast_expression "(code *******)(ppppppcStack_15c + 6)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(ppppppcStack_15c + 6)" (( "(") (binary_expression "ppppppcStack_15c + 6" (identifier "ppppppcStack_15c") (+ "+") (number_literal "6")) () ")")))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);" (assignment_expression "pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x9ac)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x9ac" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x9ac")) () ")")))) (; ";")) (expression_statement "iVar23 = *(int *)(puStack_198 + -0x7dc8);" (assignment_expression "iVar23 = *(int *)(puStack_198 + -0x7dc8)" (identifier "iVar23") (= "=") (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")"))))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (do_statement "do {\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          } while (param_2 == (code *******)0x0);" (do "do") (compound_statement "{\n                            do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));\n                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;\n                            param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);\n                            param_1 = (code *******)((int)param_1 + -1);\n                            puVar22 = puStack_198;\n                            if (param_2 != (code *******)0x0) break;\n                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);\n                            param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);\n                            puVar22 = puStack_198;\n                          }" ({ "{") (do_statement "do {\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            } while (((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1));" (do "do") (compound_statement "{\n                              iVar18 = puVar8[1] + -1;\n                              pppppppcVar6 = (code *******)*puVar8;\n                              if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }\n                              piVar14 = puVar8 + puVar8[1] * 5;\n                              param_1 = (code *******)0xffffffff;\n                              do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);\n                              *puVar8 = param_1;\n                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;\n                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }\n                            }" ({ "{") (expression_statement "iVar18 = puVar8[1] + -1;" (assignment_expression "iVar18 = puVar8[1] + -1" (identifier "iVar18") (= "=") (binary_expression "puVar8[1] + -1" (subscript_expression "puVar8[1]" (identifier "puVar8") ([ "[") (number_literal "1") (] "]")) (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)*puVar8;" (assignment_expression "pppppppcVar6 = (code *******)*puVar8" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)*puVar8" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "*puVar8" (* "*") (identifier "puVar8")))) (; ";")) (if_statement "if (iVar18 < 0) {\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }" (if "if") (parenthesized_expression "(iVar18 < 0)" (( "(") (binary_expression "iVar18 < 0" (identifier "iVar18") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n                                *puStack_164 = 0xffffffff;\nLAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }\n                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;\n                                param_2 = unaff_s2;\n                                goto LAB_000d7a74;\n                              }" ({ "{") (expression_statement "*puStack_164 = 0xffffffff;" (assignment_expression "*puStack_164 = 0xffffffff" (pointer_expression "*puStack_164" (* "*") (identifier "puStack_164")) (= "=") (number_literal "0xffffffff")) (; ";")) (labeled_statement "LAB_000d7ef8:\n                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" (statement_identifier "LAB_000d7ef8") (: ":") (if_statement "if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168) {\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" (if "if") (parenthesized_expression "(*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168)" (( "(") (binary_expression "*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==\n                                    (code *******)ppppppcStack_168" (pointer_expression "*(code ********)(**(int **)(uVar20 + 0x20) + 0x10)" (* "*") (cast_expression "(code ********)(**(int **)(uVar20 + 0x20) + 0x10)" (( "(") (type_descriptor "code ********" (type_identifier "code") (abstract_pointer_declarator "********" (* "*") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))))) () ")") (parenthesized_expression "(**(int **)(uVar20 + 0x20) + 0x10)" (( "(") (binary_expression "**(int **)(uVar20 + 0x20) + 0x10" (pointer_expression "**(int **)(uVar20 + 0x20)" (* "*") (pointer_expression "*(int **)(uVar20 + 0x20)" (* "*") (cast_expression "(int **)(uVar20 + 0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar20 + 0x20)" (( "(") (binary_expression "uVar20 + 0x20" (identifier "uVar20") (+ "+") (number_literal "0x20")) () ")"))))) (+ "+") (number_literal "0x10")) () ")")))) (== "==") (cast_expression "(code *******)ppppppcStack_168" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_168"))) () ")")) (compound_statement "{\n                                  param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);\n                                  param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));\n                                  puVar22 = puStack_198;\n                                  if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;\n                                }" ({ "{") (expression_statement "param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);" (assignment_expression "param_4 = (code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" (identifier "param_4") (= "=") (cast_expression "(code *******)\n                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c)" (( "(") (binary_expression "*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c" (pointer_expression "*(int *)(uVar20 + 0x48)" (* "*") (cast_expression "(int *)(uVar20 + 0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x48)" (( "(") (binary_expression "uVar20 + 0x48" (identifier "uVar20") (+ "+") (number_literal "0x48")) () ")")))) (* "*") (cast_expression "(int)ppppppcStack_15c" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_15c"))) () ")")))) (; ";")) (expression_statement "param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4));" (assignment_expression "param_2 = (code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))\n                                                      (*(undefined4 *)(uVar20 + 4))" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))" (( "(") (pointer_expression "*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14)" (* "*") (cast_expression "(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar22 + -0x7dc8) + 0xa14)" (( "(") (binary_expression "*(int *)(puVar22 + -0x7dc8) + 0xa14" (pointer_expression "*(int *)(puVar22 + -0x7dc8)" (* "*") (cast_expression "(int *)(puVar22 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + -0x7dc8)" (( "(") (binary_expression "puVar22 + -0x7dc8" (identifier "puVar22") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xa14")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 4))" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 4)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 4)" (( "(") (binary_expression "uVar20 + 4" (identifier "uVar20") (+ "+") (number_literal "4")) () ")")))) () ")"))))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if ((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))\n                                  goto LAB_000d7a74;" (if "if") (parenthesized_expression "((param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0))" (( "(") (binary_expression "(param_2 != (code *******)0x0) ||\n                                     (param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0)" (parenthesized_expression "(param_2 != (code *******)0x0)" (( "(") (binary_expression "param_2 != (code *******)0x0" (identifier "param_2") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0)" (( "(") (comma_expression "param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),\n                                     puVar22 = puStack_198, param_2 != (code *******)0x0" (assignment_expression "param_2 = (code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))\n                                                          (*(undefined4 *)(uVar20 + 4),uStack_160)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0xa38)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0xa38" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0xa38")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 4),uStack_160)" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 4)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 4)" (( "(") (binary_expression "uVar20 + 4" (identifier "uVar20") (+ "+") (number_literal "4")) () ")")))) (, ",") (identifier "uStack_160") () ")"))))) (, ",") (comma_expression "puVar22 = puStack_198, param_2 != (code *******)0x0" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (, ",") (binary_expression "param_2 != (code *******)0x0" (identifier "param_2") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))))) () ")"))) () ")")) (goto_statement "goto LAB_000d7a74;" (goto "goto") (statement_identifier "LAB_000d7a74") (; ";"))) (} "}")))) (expression_statement "*(code *******)(iStack_154 + 0x60) = ppppppcStack_168;" (assignment_expression "*(code *******)(iStack_154 + 0x60) = ppppppcStack_168" (pointer_expression "*(code *******)(iStack_154 + 0x60)" (* "*") (cast_expression "(code *******)(iStack_154 + 0x60)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(iStack_154 + 0x60)" (( "(") (binary_expression "iStack_154 + 0x60" (identifier "iStack_154") (+ "+") (number_literal "0x60")) () ")")))) (= "=") (identifier "ppppppcStack_168")) (; ";")) (expression_statement "param_2 = unaff_s2;" (assignment_expression "param_2 = unaff_s2" (identifier "param_2") (= "=") (identifier "unaff_s2")) (; ";")) (goto_statement "goto LAB_000d7a74;" (goto "goto") (statement_identifier "LAB_000d7a74") (; ";")) (} "}"))) (expression_statement "piVar14 = puVar8 + puVar8[1] * 5;" (assignment_expression "piVar14 = puVar8 + puVar8[1] * 5" (identifier "piVar14") (= "=") (binary_expression "puVar8 + puVar8[1] * 5" (identifier "puVar8") (+ "+") (binary_expression "puVar8[1] * 5" (subscript_expression "puVar8[1]" (identifier "puVar8") ([ "[") (number_literal "1") (] "]")) (* "*") (number_literal "5")))) (; ";")) (expression_statement "param_1 = (code *******)0xffffffff;" (assignment_expression "param_1 = (code *******)0xffffffff" (identifier "param_1") (= "=") (cast_expression "(code *******)0xffffffff" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xffffffff"))) (; ";")) (do_statement "do {\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              } while (iVar18 != -1);" (do "do") (compound_statement "{\n                                iVar10 = piVar14[-3];\n                                if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }\nLAB_000d7b7c:\n                                iVar18 = iVar18 + -1;\n                                piVar14 = piVar14 + -5;\n                              }" ({ "{") (expression_statement "iVar10 = piVar14[-3];" (assignment_expression "iVar10 = piVar14[-3]" (identifier "iVar10") (= "=") (subscript_expression "piVar14[-3]" (identifier "piVar14") ([ "[") (number_literal "-3") (] "]"))) (; ";")) (if_statement "if (iVar10 < *piVar14) {\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }" (if "if") (parenthesized_expression "(iVar10 < *piVar14)" (( "(") (binary_expression "iVar10 < *piVar14" (identifier "iVar10") (< "<") (pointer_expression "*piVar14" (* "*") (identifier "piVar14"))) () ")")) (compound_statement "{\n                                  param_4 = (code *******)piVar14[-1];\n                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                  pppppppcVar16 = (code *******)param_4[uVar19];\n                                  while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }\n                                  if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }\n                                }" ({ "{") (expression_statement "param_4 = (code *******)piVar14[-1];" (assignment_expression "param_4 = (code *******)piVar14[-1]" (identifier "param_4") (= "=") (cast_expression "(code *******)piVar14[-1]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "piVar14[-1]" (identifier "piVar14") ([ "[") (number_literal "-1") (] "]")))) (; ";")) (expression_statement "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);" (assignment_expression "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (identifier "uVar19") (= "=") (binary_expression "(uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(piVar14[-2] + iVar10 * 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar14[-2] + iVar10 * 2)" (( "(") (binary_expression "piVar14[-2] + iVar10 * 2" (subscript_expression "piVar14[-2]" (identifier "piVar14") ([ "[") (number_literal "-2") (] "]")) (+ "+") (binary_expression "iVar10 * 2" (identifier "iVar10") (* "*") (number_literal "2"))) () ")"))))) (; ";")) (expression_statement "pppppppcVar16 = (code *******)param_4[uVar19];" (assignment_expression "pppppppcVar16 = (code *******)param_4[uVar19]" (identifier "pppppppcVar16") (= "=") (cast_expression "(code *******)param_4[uVar19]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_4[uVar19]" (identifier "param_4") ([ "[") (identifier "uVar19") (] "]")))) (; ";")) (while_statement "while (pppppppcVar16 <= pppppppcVar6) {\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }" (while "while") (parenthesized_expression "(pppppppcVar16 <= pppppppcVar6)" (( "(") (binary_expression "pppppppcVar16 <= pppppppcVar6" (identifier "pppppppcVar16") (<= "<=") (identifier "pppppppcVar6")) () ")")) (compound_statement "{\n                                    iVar10 = iVar10 + 1;\n                                    piVar14[-3] = iVar10;\n                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;\n                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);\n                                    pppppppcVar16 = (code *******)param_4[uVar19];\n                                  }" ({ "{") (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + 1" (identifier "iVar10") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar14[-3] = iVar10;" (assignment_expression "piVar14[-3] = iVar10" (subscript_expression "piVar14[-3]" (identifier "piVar14") ([ "[") (number_literal "-3") (] "]")) (= "=") (identifier "iVar10")) (; ";")) (if_statement "if (*piVar14 <= iVar10) goto LAB_000d7b7c;" (if "if") (parenthesized_expression "(*piVar14 <= iVar10)" (( "(") (binary_expression "*piVar14 <= iVar10" (pointer_expression "*piVar14" (* "*") (identifier "piVar14")) (<= "<=") (identifier "iVar10")) () ")")) (goto_statement "goto LAB_000d7b7c;" (goto "goto") (statement_identifier "LAB_000d7b7c") (; ";"))) (expression_statement "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);" (assignment_expression "uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (identifier "uVar19") (= "=") (binary_expression "(uint)*(ushort *)(piVar14[-2] + iVar10 * 2)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (cast_expression "(ushort *)(piVar14[-2] + iVar10 * 2)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(piVar14[-2] + iVar10 * 2)" (( "(") (binary_expression "piVar14[-2] + iVar10 * 2" (subscript_expression "piVar14[-2]" (identifier "piVar14") ([ "[") (number_literal "-2") (] "]")) (+ "+") (binary_expression "iVar10 * 2" (identifier "iVar10") (* "*") (number_literal "2"))) () ")"))))) (; ";")) (expression_statement "pppppppcVar16 = (code *******)param_4[uVar19];" (assignment_expression "pppppppcVar16 = (code *******)param_4[uVar19]" (identifier "pppppppcVar16") (= "=") (cast_expression "(code *******)param_4[uVar19]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "param_4[uVar19]" (identifier "param_4") ([ "[") (identifier "uVar19") (] "]")))) (; ";")) (} "}"))) (if_statement "if (pppppppcVar16 < param_1) {\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }" (if "if") (parenthesized_expression "(pppppppcVar16 < param_1)" (( "(") (binary_expression "pppppppcVar16 < param_1" (identifier "pppppppcVar16") (< "<") (identifier "param_1")) () ")")) (compound_statement "{\n                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);\n                                    param_1 = pppppppcVar16;\n                                  }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);" (assignment_expression "pppppppcVar21 = (code *******)(uVar19 + piVar14[1])" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(uVar19 + piVar14[1])" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(uVar19 + piVar14[1])" (( "(") (binary_expression "uVar19 + piVar14[1]" (identifier "uVar19") (+ "+") (subscript_expression "piVar14[1]" (identifier "piVar14") ([ "[") (number_literal "1") (] "]"))) () ")")))) (; ";")) (expression_statement "param_1 = pppppppcVar16;" (assignment_expression "param_1 = pppppppcVar16" (identifier "param_1") (= "=") (identifier "pppppppcVar16")) (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_000d7b7c:\n                                iVar18 = iVar18 + -1;" (statement_identifier "LAB_000d7b7c") (: ":") (expression_statement "iVar18 = iVar18 + -1;" (assignment_expression "iVar18 = iVar18 + -1" (identifier "iVar18") (= "=") (binary_expression "iVar18 + -1" (identifier "iVar18") (+ "+") (number_literal "-1"))) (; ";"))) (expression_statement "piVar14 = piVar14 + -5;" (assignment_expression "piVar14 = piVar14 + -5" (identifier "piVar14") (= "=") (binary_expression "piVar14 + -5" (identifier "piVar14") (+ "+") (number_literal "-5"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar18 != -1)" (( "(") (binary_expression "iVar18 != -1" (identifier "iVar18") (!= "!=") (number_literal "-1")) () ")")) (; ";")) (expression_statement "*puVar8 = param_1;" (assignment_expression "*puVar8 = param_1" (pointer_expression "*puVar8" (* "*") (identifier "puVar8")) (= "=") (identifier "param_1")) (; ";")) (if_statement "if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;" (if "if") (parenthesized_expression "(param_1 == (code *******)0xffffffff)" (( "(") (binary_expression "param_1 == (code *******)0xffffffff" (identifier "param_1") (== "==") (cast_expression "(code *******)0xffffffff" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0xffffffff"))) () ")")) (goto_statement "goto LAB_000d7ef8;" (goto "goto") (statement_identifier "LAB_000d7ef8") (; ";"))) (if_statement "if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" (if "if") (parenthesized_expression "((code ******)ppppppcStack_180[0x44] != (code ******)0x0)" (( "(") (binary_expression "(code ******)ppppppcStack_180[0x44] != (code ******)0x0" (cast_expression "(code ******)ppppppcStack_180[0x44]" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (subscript_expression "ppppppcStack_180[0x44]" (identifier "ppppppcStack_180") ([ "[") (number_literal "0x44") (] "]"))) (!= "!=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                                param_2 = (code *******)&DAT_00000007;\n                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }\n                                goto LAB_000d7a74;\n                              }" ({ "{") (expression_statement "param_2 = (code *******)&DAT_00000007;" (assignment_expression "param_2 = (code *******)&DAT_00000007" (identifier "param_2") (= "=") (cast_expression "(code *******)&DAT_00000007" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (if_statement "if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {\n                                  param_2 = (code *******)&DAT_00000009;\n                                }" (if "if") (parenthesized_expression "(*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0)" (( "(") (binary_expression "*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0" (pointer_expression "*(code *)((int)ppppppcStack_180 + 0x51)" (* "*") (cast_expression "(code *)((int)ppppppcStack_180 + 0x51)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)ppppppcStack_180 + 0x51)" (( "(") (binary_expression "(int)ppppppcStack_180 + 0x51" (cast_expression "(int)ppppppcStack_180" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "ppppppcStack_180")) (+ "+") (number_literal "0x51")) () ")")))) (== "==") (cast_expression "(code)0x0" (( "(") (type_descriptor "code" (type_identifier "code")) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                                  param_2 = (code *******)&DAT_00000009;\n                                }" ({ "{") (expression_statement "param_2 = (code *******)&DAT_00000009;" (assignment_expression "param_2 = (code *******)&DAT_00000009" (identifier "param_2") (= "=") (cast_expression "(code *******)&DAT_00000009" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000009" (& "&") (identifier "DAT_00000009")))) (; ";")) (} "}"))) (goto_statement "goto LAB_000d7a74;" (goto "goto") (statement_identifier "LAB_000d7a74") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1))" (( "(") (binary_expression "((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)) ||\n                                    (ppppppcStack_140 < param_1)" (parenthesized_expression "((pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21))" (( "(") (binary_expression "(pppppppcVar21 <= ppppppcStack_184) ||\n                                     (ppppppcStack_168 < pppppppcVar21)" (parenthesized_expression "(pppppppcVar21 <= ppppppcStack_184)" (( "(") (binary_expression "pppppppcVar21 <= ppppppcStack_184" (identifier "pppppppcVar21") (<= "<=") (identifier "ppppppcStack_184")) () ")")) (|| "||") (parenthesized_expression "(ppppppcStack_168 < pppppppcVar21)" (( "(") (binary_expression "ppppppcStack_168 < pppppppcVar21" (identifier "ppppppcStack_168") (< "<") (identifier "pppppppcVar21")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(ppppppcStack_140 < param_1)" (( "(") (binary_expression "ppppppcStack_140 < param_1" (identifier "ppppppcStack_140") (< "<") (identifier "param_1")) () ")"))) () ")")) (; ";")) (expression_statement "uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38;" (assignment_expression "uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38" (identifier "uStack_1a0") (= "=") (binary_expression "ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3) + 0x38" (binary_expression "ZEXT48((code *)((int)pppppppcVar21 + -1)) *\n                                         ZEXT48(unaff_s3)" (call_expression "ZEXT48((code *)((int)pppppppcVar21 + -1))" (identifier "ZEXT48") (argument_list "((code *)((int)pppppppcVar21 + -1))" (( "(") (cast_expression "(code *)((int)pppppppcVar21 + -1)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppppcVar21 + -1)" (( "(") (binary_expression "(int)pppppppcVar21 + -1" (cast_expression "(int)pppppppcVar21" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppppcVar21")) (+ "+") (number_literal "-1")) () ")"))) () ")"))) (* "*") (call_expression "ZEXT48(unaff_s3)" (identifier "ZEXT48") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")")))) (+ "+") (number_literal "0x38"))) (; ";")) (expression_statement "param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c);" (assignment_expression "param_2 = (code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                      (*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)pppppppcVar24)\n                                                (*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" (parenthesized_expression "(*(code *)pppppppcVar24)" (( "(") (pointer_expression "*(code *)pppppppcVar24" (* "*") (cast_expression "(code *)pppppppcVar24" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pppppppcVar24"))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 8),uStack_174,\n                                                 ppppppcStack_15c)" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 8)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 8)" (( "(") (binary_expression "uVar20 + 8" (identifier "uVar20") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "uStack_174") (, ",") (identifier "ppppppcStack_15c") () ")"))))) (; ";")) (expression_statement "param_1 = (code *******)((int)param_1 + -1);" (assignment_expression "param_1 = (code *******)((int)param_1 + -1)" (identifier "param_1") (= "=") (cast_expression "(code *******)((int)param_1 + -1)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "((int)param_1 + -1)" (( "(") (binary_expression "(int)param_1 + -1" (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")) (+ "+") (number_literal "-1")) () ")")))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (if_statement "if (param_2 != (code *******)0x0) break;" (if "if") (parenthesized_expression "(param_2 != (code *******)0x0)" (( "(") (binary_expression "param_2 != (code *******)0x0" (identifier "param_2") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);" (assignment_expression "uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c)" (identifier "uStack_1a0") (= "=") (binary_expression "ZEXT48(param_1) * ZEXT48(ppppppcStack_16c)" (call_expression "ZEXT48(param_1)" (identifier "ZEXT48") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (* "*") (call_expression "ZEXT48(ppppppcStack_16c)" (identifier "ZEXT48") (argument_list "(ppppppcStack_16c)" (( "(") (identifier "ppppppcStack_16c") () ")"))))) (; ";")) (expression_statement "param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c);" (assignment_expression "param_2 = (code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" (identifier "param_2") (= "=") (cast_expression "(code *******)\n                                      (*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(iVar23 + 0x9e0))\n                                                (*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" (parenthesized_expression "(*(code *)(iVar23 + 0x9e0))" (( "(") (pointer_expression "*(code *)(iVar23 + 0x9e0)" (* "*") (cast_expression "(code *)(iVar23 + 0x9e0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0x9e0)" (( "(") (binary_expression "iVar23 + 0x9e0" (identifier "iVar23") (+ "+") (number_literal "0x9e0")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(uVar20 + 4),uStack_174,\n                                                 ppppppcStack_15c)" (( "(") (pointer_expression "*(undefined4 *)(uVar20 + 4)" (* "*") (cast_expression "(undefined4 *)(uVar20 + 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 4)" (( "(") (binary_expression "uVar20 + 4" (identifier "uVar20") (+ "+") (number_literal "4")) () ")")))) (, ",") (identifier "uStack_174") (, ",") (identifier "ppppppcStack_15c") () ")"))))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_2 == (code *******)0x0)" (( "(") (binary_expression "param_2 == (code *******)0x0" (identifier "param_2") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_000d7a74:\n                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);" (statement_identifier "LAB_000d7a74") (: ":") (expression_statement "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);" (call_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1)" (parenthesized_expression "(*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))" (( "(") (pointer_expression "*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" (* "*") (cast_expression "(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar22 + -0x7dc8) + 0x4d2c)" (( "(") (binary_expression "*(int *)(puVar22 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puVar22 + -0x7dc8)" (* "*") (cast_expression "(int *)(puVar22 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar22 + -0x7dc8)" (( "(") (binary_expression "puVar22 + -0x7dc8" (identifier "puVar22") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d2c")) () ")")))) () ")")) (argument_list "(uVar20,3,1)" (( "(") (identifier "uVar20") (, ",") (number_literal "3") (, ",") (number_literal "1") () ")"))) (; ";"))) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (goto_statement "goto LAB_000d7648;" (goto "goto") (statement_identifier "LAB_000d7648") (; ";")) (} "}"))) (expression_statement "pppppppcVar6 = (code *******)&DAT_00000007;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000007" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)&DAT_00000007" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000007" (& "&") (identifier "DAT_00000007")))) (; ";")) (expression_statement "puVar22 = puStack_198;" (assignment_expression "puVar22 = puStack_198" (identifier "puVar22") (= "=") (identifier "puStack_198")) (; ";")) (} "}")) (else_clause "else {\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" (else "else") (compound_statement "{\nLAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;\nLAB_000d7648:\n                    unaff_s5 = pppppppcVar24;\n                    if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;\n                  }" ({ "{") (labeled_statement "LAB_000d7644:\n                    puStack_164 = (undefined4 *)0x0;" (statement_identifier "LAB_000d7644") (: ":") (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" (identifier "puStack_164") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";"))) (labeled_statement "LAB_000d7648:\n                    unaff_s5 = pppppppcVar24;" (statement_identifier "LAB_000d7648") (: ":") (expression_statement "unaff_s5 = pppppppcVar24;" (assignment_expression "unaff_s5 = pppppppcVar24" (identifier "unaff_s5") (= "=") (identifier "pppppppcVar24")) (; ";"))) (if_statement "if ((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;" (if "if") (parenthesized_expression "((param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0))" (( "(") (binary_expression "(param_2 == (code *******)&DAT_00000005) ||\n                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)" (parenthesized_expression "(param_2 == (code *******)&DAT_00000005)" (( "(") (binary_expression "param_2 == (code *******)&DAT_00000005" (identifier "param_2") (== "==") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) () ")")) (|| "||") (parenthesized_expression "(pppppppcVar6 = param_2, param_2 == (code *******)0x0)" (( "(") (comma_expression "pppppppcVar6 = param_2, param_2 == (code *******)0x0" (assignment_expression "pppppppcVar6 = param_2" (identifier "pppppppcVar6") (= "=") (identifier "param_2")) (, ",") (binary_expression "param_2 == (code *******)0x0" (identifier "param_2") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0")))) () ")"))) () ")")) (goto_statement "goto LAB_000d765c;" (goto "goto") (statement_identifier "LAB_000d765c") (; ";"))) (} "}")))) (} "}")) (else_clause "else {\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" (else "else") (compound_statement "{\n                  puStack_164 = (undefined4 *)0x0;\nLAB_000d765c:\n                  pppppppcVar24 = unaff_s5;\n                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }\n                }" ({ "{") (expression_statement "puStack_164 = (undefined4 *)0x0;" (assignment_expression "puStack_164 = (undefined4 *)0x0" (identifier "puStack_164") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000d765c:\n                  pppppppcVar24 = unaff_s5;" (statement_identifier "LAB_000d765c") (: ":") (expression_statement "pppppppcVar24 = unaff_s5;" (assignment_expression "pppppppcVar24 = unaff_s5" (identifier "pppppppcVar24") (= "=") (identifier "unaff_s5")) (; ";"))) (if_statement "if ((code *******)ppppppcStack_170 == (code *******)0x0) {\n                    pppppppcVar6 = (code *******)0x0;\n                  }\n                  else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" (if "if") (parenthesized_expression "((code *******)ppppppcStack_170 == (code *******)0x0)" (( "(") (binary_expression "(code *******)ppppppcStack_170 == (code *******)0x0" (cast_expression "(code *******)ppppppcStack_170" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_170")) (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    pppppppcVar6 = (code *******)0x0;\n                  }" ({ "{") (expression_statement "pppppppcVar6 = (code *******)0x0;" (assignment_expression "pppppppcVar6 = (code *******)0x0" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" (else "else") (compound_statement "{\n                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;\n                    param_1 = (code *******)ppppppcStack_170;\n                    pppppppcVar6 = (code *******)&DAT_00000005;\n                  }" ({ "{") (if_statement "if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;" (if "if") (parenthesized_expression "(*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60))" (( "(") (binary_expression "*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)" (pointer_expression "*(uint *)(uVar20 + 0x44)" (* "*") (cast_expression "(uint *)(uVar20 + 0x44)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x44)" (( "(") (binary_expression "uVar20 + 0x44" (identifier "uVar20") (+ "+") (number_literal "0x44")) () ")")))) (<= "<=") (pointer_expression "*(uint *)(iStack_154 + 0x60)" (* "*") (cast_expression "(uint *)(iStack_154 + 0x60)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iStack_154 + 0x60)" (( "(") (binary_expression "iStack_154 + 0x60" (identifier "iStack_154") (+ "+") (number_literal "0x60")) () ")"))))) () ")")) (goto_statement "goto LAB_000d7f78;" (goto "goto") (statement_identifier "LAB_000d7f78") (; ";"))) (expression_statement "param_1 = (code *******)ppppppcStack_170;" (assignment_expression "param_1 = (code *******)ppppppcStack_170" (identifier "param_1") (= "=") (cast_expression "(code *******)ppppppcStack_170" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_170"))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000005" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) (; ";")) (} "}")))) (} "}")))) (goto_statement "goto LAB_000d8010;" (goto "goto") (statement_identifier "LAB_000d8010") (; ";")) (} "}"))) (expression_statement "pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);" (assignment_expression "pppppppcVar6 = (code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)\n                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7d2c) + 0x3b28)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7d2c) + 0x3b28" (pointer_expression "*(int *)(puStack_198 + -0x7d2c)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7d2c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7d2c)" (( "(") (binary_expression "puStack_198 + -0x7d2c" (identifier "puStack_198") (+ "+") (number_literal "-0x7d2c")) () ")")))) (+ "+") (number_literal "0x3b28")) () ")")))) () ")")) (argument_list "(0xf176)" (( "(") (number_literal "0xf176") () ")"))))) (; ";")) (} "}")))) (if_statement "if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               ) goto LAB_000d8034;" (if "if") (parenthesized_expression "((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)\n               )" (( "(") (binary_expression "(pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)" (parenthesized_expression "(pppppppcVar6 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar6 != (code *******)0x0" (identifier "pppppppcVar6") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(pppppppcVar6 != (code *******)&DAT_00000005)" (( "(") (binary_expression "pppppppcVar6 != (code *******)&DAT_00000005" (identifier "pppppppcVar6") (!= "!=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) () ")"))) () ")")) (goto_statement "goto LAB_000d8034;" (goto "goto") (statement_identifier "LAB_000d8034") (; ";"))) (if_statement "if ((code ****)pppcStack_17c != (code ****)0x0) {\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }" (if "if") (parenthesized_expression "((code ****)pppcStack_17c != (code ****)0x0)" (( "(") (binary_expression "(code ****)pppcStack_17c != (code ****)0x0" (cast_expression "(code ****)pppcStack_17c" (( "(") (type_descriptor "code ****" (type_identifier "code") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (identifier "pppcStack_17c")) (!= "!=") (cast_expression "(code ****)0x0" (( "(") (type_descriptor "code ****" (type_identifier "code") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);\n            }" ({ "{") (expression_statement "*pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);" (assignment_expression "*pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44)" (pointer_expression "*pppcStack_17c" (* "*") (identifier "pppcStack_17c")) (= "=") (cast_expression "(code **)*(code ****)(uVar20 + 0x44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (pointer_expression "*(code ****)(uVar20 + 0x44)" (* "*") (cast_expression "(code ****)(uVar20 + 0x44)" (( "(") (type_descriptor "code ****" (type_identifier "code") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(uVar20 + 0x44)" (( "(") (binary_expression "uVar20 + 0x44" (identifier "uVar20") (+ "+") (number_literal "0x44")) () ")")))))) (; ";")) (} "}"))) (if_statement "if ((code *******)ppppppcStack_178 != (code *******)0x0) {\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }" (if "if") (parenthesized_expression "((code *******)ppppppcStack_178 != (code *******)0x0)" (( "(") (binary_expression "(code *******)ppppppcStack_178 != (code *******)0x0" (cast_expression "(code *******)ppppppcStack_178" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (identifier "ppppppcStack_178")) (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);\n            }" ({ "{") (expression_statement "*ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);" (assignment_expression "*ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" (pointer_expression "*ppppppcStack_178" (* "*") (identifier "ppppppcStack_178")) (= "=") (cast_expression "(code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (pointer_expression "*(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" (* "*") (cast_expression "(code *******)(**(int **)(uVar20 + 0x20) + 0x60)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (parenthesized_expression "(**(int **)(uVar20 + 0x20) + 0x60)" (( "(") (binary_expression "**(int **)(uVar20 + 0x20) + 0x60" (pointer_expression "**(int **)(uVar20 + 0x20)" (* "*") (pointer_expression "*(int **)(uVar20 + 0x20)" (* "*") (cast_expression "(int **)(uVar20 + 0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(uVar20 + 0x20)" (( "(") (binary_expression "uVar20 + 0x20" (identifier "uVar20") (+ "+") (number_literal "0x20")) () ")"))))) (+ "+") (number_literal "0x60")) () ")")))))) (; ";")) (} "}"))) (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" (if "if") (parenthesized_expression "(iStack_130 != 0)" (( "(") (binary_expression "iStack_130 != 0" (identifier "iStack_130") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000d7e2c;" (goto "goto") (statement_identifier "LAB_000d7e2c") (; ";"))) (} "}")))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4f74")) () ")")))) () ")")) (argument_list "(uVar20)" (( "(") (identifier "uVar20") () ")"))) (; ";")) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" (identifier "param_3") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d2c")) () ")")))) () ")")) (argument_list "(uVar20)" (( "(") (identifier "uVar20") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 0;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 0" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" (* "*") (cast_expression "(undefined1 *)(uVar20 + 0x2d)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x2d)" (( "(") (binary_expression "uVar20 + 0x2d" (identifier "uVar20") (+ "+") (number_literal "0x2d")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }" (if "if") (parenthesized_expression "((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170))" (( "(") (binary_expression "(pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)" (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar6 == (code *******)0x0" (identifier "pppppppcVar6") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(ppppppcStack_78 != ppppppcStack_170)" (( "(") (binary_expression "ppppppcStack_78 != ppppppcStack_170" (identifier "ppppppcStack_78") (!= "!=") (identifier "ppppppcStack_170")) () ")"))) () ")")) (compound_statement "{\n            pppppppcVar6 = (code *******)&DAT_00000005;\n          }" ({ "{") (expression_statement "pppppppcVar6 = (code *******)&DAT_00000005;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000005" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) (; ";")) (} "}"))) (goto_statement "goto LAB_000d7ea0;" (goto "goto") (statement_identifier "LAB_000d7ea0") (; ";")) (} "}"))) (if_statement "if (param_1 == (code *******)0x0) goto LAB_000d74f0;" (if "if") (parenthesized_expression "(param_1 == (code *******)0x0)" (( "(") (binary_expression "param_1 == (code *******)0x0" (identifier "param_1") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d74f0;" (goto "goto") (statement_identifier "LAB_000d74f0") (; ";"))) (} "}")) (else_clause "else {\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" (else "else") (compound_statement "{\n        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);\n        pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);\n        if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }\n        if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }\n        ppppppcStack_170 = ppppppcStack_78;\nLAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;\n      }" ({ "{") (expression_statement "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);" (assignment_expression "uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_)" (identifier "uStack_1a0") (= "=") (call_expression "CONCAT44(1,uStack_1a0._4_4_)" (identifier "CONCAT44") (argument_list "(1,uStack_1a0._4_4_)" (( "(") (number_literal "1") (, ",") (field_expression "uStack_1a0._4_4_" (identifier "uStack_1a0") (. ".") (field_identifier "_4_4_")) () ")")))) (; ";")) (expression_statement "pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);" (assignment_expression "pppppppcVar6 = (code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)\n                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))\n                                 (uVar20,ppppppcStack_18c,ppppppcStack_188)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d7c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d7c")) () ")")))) () ")")) (argument_list "(uVar20,ppppppcStack_18c,ppppppcStack_188)" (( "(") (identifier "uVar20") (, ",") (identifier "ppppppcStack_18c") (, ",") (identifier "ppppppcStack_188") () ")"))))) (; ";")) (if_statement "if (pppppppcVar6 == (code *******)0x0) {\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }" (if "if") (parenthesized_expression "(pppppppcVar6 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar6 == (code *******)0x0" (identifier "pppppppcVar6") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          *(undefined1 *)(uVar20 + 0x2c) = 1;\n          ppppppcStack_170 = ppppppcStack_78;\n          goto LAB_000d7410;\n        }" ({ "{") (expression_statement "*(undefined1 *)(uVar20 + 0x2c) = 1;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2c) = 1" (pointer_expression "*(undefined1 *)(uVar20 + 0x2c)" (* "*") (cast_expression "(undefined1 *)(uVar20 + 0x2c)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x2c)" (( "(") (binary_expression "uVar20 + 0x2c" (identifier "uVar20") (+ "+") (number_literal "0x2c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" (identifier "ppppppcStack_170") (= "=") (identifier "ppppppcStack_78")) (; ";")) (goto_statement "goto LAB_000d7410;" (goto "goto") (statement_identifier "LAB_000d7410") (; ";")) (} "}"))) (if_statement "if (pppppppcVar6 == (code *******)&DAT_00000005) {\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }" (if "if") (parenthesized_expression "(pppppppcVar6 == (code *******)&DAT_00000005)" (( "(") (binary_expression "pppppppcVar6 == (code *******)&DAT_00000005" (identifier "pppppppcVar6") (== "==") (cast_expression "(code *******)&DAT_00000005" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000005" (& "&") (identifier "DAT_00000005")))) () ")")) (compound_statement "{\n          ppppppcStack_18c = (code ******)0x0;\n          ppppppcStack_170 = (code ******)0x0;\n          goto LAB_000d7410;\n        }" ({ "{") (expression_statement "ppppppcStack_18c = (code ******)0x0;" (assignment_expression "ppppppcStack_18c = (code ******)0x0" (identifier "ppppppcStack_18c") (= "=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "ppppppcStack_170 = (code ******)0x0;" (assignment_expression "ppppppcStack_170 = (code ******)0x0" (identifier "ppppppcStack_170") (= "=") (cast_expression "(code ******)0x0" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000d7410;" (goto "goto") (statement_identifier "LAB_000d7410") (; ";")) (} "}"))) (expression_statement "ppppppcStack_170 = ppppppcStack_78;" (assignment_expression "ppppppcStack_170 = ppppppcStack_78" (identifier "ppppppcStack_170") (= "=") (identifier "ppppppcStack_78")) (; ";")) (labeled_statement "LAB_000d8034:\n        if (iStack_130 != 0) goto LAB_000d7e2c;" (statement_identifier "LAB_000d8034") (: ":") (if_statement "if (iStack_130 != 0) goto LAB_000d7e2c;" (if "if") (parenthesized_expression "(iStack_130 != 0)" (( "(") (binary_expression "iStack_130 != 0" (identifier "iStack_130") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000d7e2c;" (goto "goto") (statement_identifier "LAB_000d7e2c") (; ";")))) (} "}")))) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4f74)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4f74" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4f74")) () ")")))) () ")")) (argument_list "(uVar20)" (( "(") (identifier "uVar20") () ")"))) (; ";")) (expression_statement "param_3 = (code *******)0x1;" (assignment_expression "param_3 = (code *******)0x1" (identifier "param_3") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)0x1;" (assignment_expression "pppppppcVar24 = (code *******)0x1" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x1" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);" (call_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20)" (parenthesized_expression "(*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))" (( "(") (pointer_expression "*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (* "*") (cast_expression "(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c)" (( "(") (binary_expression "*(int *)(puStack_198 + -0x7dc8) + 0x4d2c" (pointer_expression "*(int *)(puStack_198 + -0x7dc8)" (* "*") (cast_expression "(int *)(puStack_198 + -0x7dc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puStack_198 + -0x7dc8)" (( "(") (binary_expression "puStack_198 + -0x7dc8" (identifier "puStack_198") (+ "+") (number_literal "-0x7dc8")) () ")")))) (+ "+") (number_literal "0x4d2c")) () ")")))) () ")")) (argument_list "(uVar20)" (( "(") (identifier "uVar20") () ")"))) (; ";")) (expression_statement "*(undefined1 *)(uVar20 + 0x2d) = 0;" (assignment_expression "*(undefined1 *)(uVar20 + 0x2d) = 0" (pointer_expression "*(undefined1 *)(uVar20 + 0x2d)" (* "*") (cast_expression "(undefined1 *)(uVar20 + 0x2d)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uVar20 + 0x2d)" (( "(") (binary_expression "uVar20 + 0x2d" (identifier "uVar20") (+ "+") (number_literal "0x2d")) () ")")))) (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" (else "else") (compound_statement "{\n    pppppppcVar6 = (code *******)&DAT_00000008;\n  }" ({ "{") (expression_statement "pppppppcVar6 = (code *******)&DAT_00000008;" (assignment_expression "pppppppcVar6 = (code *******)&DAT_00000008" (identifier "pppppppcVar6") (= "=") (cast_expression "(code *******)&DAT_00000008" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (pointer_expression "&DAT_00000008" (& "&") (identifier "DAT_00000008")))) (; ";")) (} "}")))) (labeled_statement "LAB_000d7ea0:\n  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }" (statement_identifier "LAB_000d7ea0") (: ":") (if_statement "if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {\n    return pppppppcVar6;\n  }" (if "if") (parenthesized_expression "(apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54))" (( "(") (binary_expression "apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)" (subscript_expression "apppppcStack_114[0x1a]" (identifier "apppppcStack_114") ([ "[") (number_literal "0x1a") (] "]")) (== "==") (cast_expression "(code *****)**(int **)(puStack_198 + -0x7a54)" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (pointer_expression "**(int **)(puStack_198 + -0x7a54)" (* "*") (pointer_expression "*(int **)(puStack_198 + -0x7a54)" (* "*") (cast_expression "(int **)(puStack_198 + -0x7a54)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7a54)" (( "(") (binary_expression "puStack_198 + -0x7a54" (identifier "puStack_198") (+ "+") (number_literal "-0x7a54")) () ")"))))))) () ")")) (compound_statement "{\n    return pppppppcVar6;\n  }" ({ "{") (return_statement "return pppppppcVar6;" (return "return") (identifier "pppppppcVar6") (; ";")) (} "}")))) (expression_statement "pcVar3 = *(code **)(puStack_198 + -0x7a80);" (assignment_expression "pcVar3 = *(code **)(puStack_198 + -0x7a80)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(puStack_198 + -0x7a80)" (* "*") (cast_expression "(code **)(puStack_198 + -0x7a80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_198 + -0x7a80)" (( "(") (binary_expression "puStack_198 + -0x7a80" (identifier "puStack_198") (+ "+") (number_literal "-0x7a80")) () ")"))))) (; ";")) (expression_statement "pcVar4 = FUN_000d80a0;" (assignment_expression "pcVar4 = FUN_000d80a0" (identifier "pcVar4") (= "=") (identifier "FUN_000d80a0")) (; ";")) (expression_statement "pppppcVar2 = apppppcStack_114[0x1a];" (assignment_expression "pppppcVar2 = apppppcStack_114[0x1a]" (identifier "pppppcVar2") (= "=") (subscript_expression "apppppcStack_114[0x1a]" (identifier "apppppcStack_114") ([ "[") (number_literal "0x1a") (] "]"))) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar23 = uStack_1a0._0_4_;" (assignment_expression "iVar23 = uStack_1a0._0_4_" (identifier "iVar23") (= "=") (field_expression "uStack_1a0._0_4_" (identifier "uStack_1a0") (. ".") (field_identifier "_0_4_"))) (; ";")) (expression_statement "iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);" (assignment_expression "iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c)" (identifier "iStack_1d4") (= "=") (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" (* "*") (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" (* "*") (cast_expression "(int **)(pcVar3 + 0xb7e2c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 0xb7e2c)" (( "(") (binary_expression "pcVar3 + 0xb7e2c" (identifier "pcVar3") (+ "+") (number_literal "0xb7e2c")) () ")")))))) (; ";")) (expression_statement "ppppppcStack_1cc = (code ******)param_1;" (assignment_expression "ppppppcStack_1cc = (code ******)param_1" (identifier "ppppppcStack_1cc") (= "=") (cast_expression "(code ******)param_1" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_1"))) (; ";")) (expression_statement "ppppppcStack_1c8 = (code ******)pppppppcVar21;" (assignment_expression "ppppppcStack_1c8 = (code ******)pppppppcVar21" (identifier "ppppppcStack_1c8") (= "=") (cast_expression "(code ******)pppppppcVar21" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "pppppppcVar21"))) (; ";")) (expression_statement "ppppppcStack_1c4 = (code ******)unaff_s2;" (assignment_expression "ppppppcStack_1c4 = (code ******)unaff_s2" (identifier "ppppppcStack_1c4") (= "=") (cast_expression "(code ******)unaff_s2" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s2"))) (; ";")) (expression_statement "ppppppcStack_1c0 = (code ******)unaff_s3;" (assignment_expression "ppppppcStack_1c0 = (code ******)unaff_s3" (identifier "ppppppcStack_1c0") (= "=") (cast_expression "(code ******)unaff_s3" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s3"))) (; ";")) (expression_statement "ppppppcStack_1bc = (code ******)param_2;" (assignment_expression "ppppppcStack_1bc = (code ******)param_2" (identifier "ppppppcStack_1bc") (= "=") (cast_expression "(code ******)param_2" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "param_2"))) (; ";")) (expression_statement "ppppppcStack_1b8 = (code ******)unaff_s5;" (assignment_expression "ppppppcStack_1b8 = (code ******)unaff_s5" (identifier "ppppppcStack_1b8") (= "=") (cast_expression "(code ******)unaff_s5" (( "(") (type_descriptor "code ******" (type_identifier "code") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))))) () ")") (identifier "unaff_s5"))) (; ";")) (expression_statement "pcStack_1b4 = pcVar4;" (assignment_expression "pcStack_1b4 = pcVar4" (identifier "pcStack_1b4") (= "=") (identifier "pcVar4")) (; ";")) (if_statement "if (pppppcVar2 == (code *****)0x0) {\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }" (if "if") (parenthesized_expression "(pppppcVar2 == (code *****)0x0)" (( "(") (binary_expression "pppppcVar2 == (code *****)0x0" (identifier "pppppcVar2") (== "==") (cast_expression "(code *****)0x0" (( "(") (type_descriptor "code *****" (type_identifier "code") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    pppppppcVar21 = (code *******)0x0;\n    goto LAB_000d8300;\n  }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (goto_statement "goto LAB_000d8300;" (goto "goto") (statement_identifier "LAB_000d8300") (; ";")) (} "}"))) (if_statement "if (uStack_1a0._0_4_ == 0) {\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }\n  else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" (if "if") (parenthesized_expression "(uStack_1a0._0_4_ == 0)" (( "(") (binary_expression "uStack_1a0._0_4_ == 0" (field_expression "uStack_1a0._0_4_" (identifier "uStack_1a0") (. ".") (field_identifier "_0_4_")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pppppppcVar21 = (code *******)0x0;\nLAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;\n    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n    uVar17 = pppppcVar2[8];\n  }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)0x0;" (assignment_expression "pppppppcVar21 = (code *******)0x0" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (labeled_statement "LAB_000d82a0:\n    pppppppcVar24 = (code *******)0x0;" (statement_identifier "LAB_000d82a0") (: ":") (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";"))) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7b64)" (( "(") (binary_expression "pcVar3 + 0xb7b64" (identifier "pcVar3") (+ "+") (number_literal "0xb7b64")) () ")")))) (+ "+") (number_literal "0x16bc")) () ")")))) () ")")) (argument_list "(pppppcVar2)" (( "(") (identifier "pppppcVar2") () ")"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0x968")) () ")")))) () ")")) (argument_list "(pppppcVar2[2])" (( "(") (subscript_expression "pppppcVar2[2]" (identifier "pppppcVar2") ([ "[") (number_literal "2") (] "]")) () ")"))) (; ";")) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" (identifier "uVar17") (= "=") (subscript_expression "pppppcVar2[8]" (identifier "pppppcVar2") ([ "[") (number_literal "8") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" (else "else") (compound_statement "{\n    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }\n    pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);\n    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;\n    iStack_1d8 = -1;\n    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);\n    if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }\n  }" ({ "{") (expression_statement "pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);" (assignment_expression "pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4)" (parenthesized_expression "(**(code **)((int)*pppppcVar2[1] + 0x1c))" (( "(") (pointer_expression "**(code **)((int)*pppppcVar2[1] + 0x1c)" (* "*") (pointer_expression "*(code **)((int)*pppppcVar2[1] + 0x1c)" (* "*") (cast_expression "(code **)((int)*pppppcVar2[1] + 0x1c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((int)*pppppcVar2[1] + 0x1c)" (( "(") (binary_expression "(int)*pppppcVar2[1] + 0x1c" (cast_expression "(int)*pppppcVar2[1]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "*pppppcVar2[1]" (* "*") (subscript_expression "pppppcVar2[1]" (identifier "pppppcVar2") ([ "[") (number_literal "1") (] "]")))) (+ "+") (number_literal "0x1c")) () ")"))))) () ")")) (argument_list "(pppppcVar2[1],4)" (( "(") (subscript_expression "pppppcVar2[1]" (identifier "pppppcVar2") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "4") () ")"))))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d82a0;" (goto "goto") (statement_identifier "LAB_000d82a0") (; ";"))) (if_statement "if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }" (if "if") (parenthesized_expression "(*(char *)((int)pppppcVar2 + 0x2b) == '\0')" (( "(") (binary_expression "*(char *)((int)pppppcVar2 + 0x2b) == '\0'" (pointer_expression "*(char *)((int)pppppcVar2 + 0x2b)" (* "*") (cast_expression "(char *)((int)pppppcVar2 + 0x2b)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppcVar2 + 0x2b)" (( "(") (binary_expression "(int)pppppcVar2 + 0x2b" (cast_expression "(int)pppppcVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppcVar2")) (+ "+") (number_literal "0x2b")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;\n    }" ({ "{") (expression_statement "*(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;" (assignment_expression "*(undefined1 *)((int)pppppcVar2 + 0x2b) = 1" (pointer_expression "*(undefined1 *)((int)pppppcVar2 + 0x2b)" (* "*") (cast_expression "(undefined1 *)((int)pppppcVar2 + 0x2b)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)pppppcVar2 + 0x2b)" (( "(") (binary_expression "(int)pppppcVar2 + 0x2b" (cast_expression "(int)pppppcVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pppppcVar2")) (+ "+") (number_literal "0x2b")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);" (assignment_expression "pppppppcVar21 =\n         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" (identifier "pppppppcVar21") (= "=") (cast_expression "(code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (call_expression "FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" (identifier "FUN_000d7350") (argument_list "(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0)" (( "(") (identifier "pppppcVar2") (, ",") (identifier "pppppppcVar24") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "iVar23") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))))) (; ";")) (if_statement "if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;" (if "if") (parenthesized_expression "(pppppppcVar21 != (code *******)0x0)" (( "(") (binary_expression "pppppppcVar21 != (code *******)0x0" (identifier "pppppppcVar21") (!= "!=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000d82a0;" (goto "goto") (statement_identifier "LAB_000d82a0") (; ";"))) (expression_statement "iStack_1d8 = -1;" (assignment_expression "iStack_1d8 = -1" (identifier "iStack_1d8") (= "=") (number_literal "-1")) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xac4)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xac4" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0xac4")) () ")")))) () ")")) (argument_list "(pppppcVar2[1],10,&iStack_1d8)" (( "(") (subscript_expression "pppppcVar2[1]" (identifier "pppppcVar2") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "10") (, ",") (pointer_expression "&iStack_1d8" (& "&") (identifier "iStack_1d8")) () ")"))) (; ";")) (if_statement "if (iStack_1d8 == 1) {\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }\n    else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" (if "if") (parenthesized_expression "(iStack_1d8 == 1)" (( "(") (binary_expression "iStack_1d8 == 1" (identifier "iStack_1d8") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n      if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }\n      pppppppcVar24 = (code *******)0x0;\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      uVar17 = pppppcVar2[8];\n    }" ({ "{") (if_statement "if (-1 < (int)pppppcVar2[4]) {\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }" (if "if") (parenthesized_expression "(-1 < (int)pppppcVar2[4])" (( "(") (binary_expression "-1 < (int)pppppcVar2[4]" (number_literal "-1") (< "<") (cast_expression "(int)pppppcVar2[4]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "pppppcVar2[4]" (identifier "pppppcVar2") ([ "[") (number_literal "4") (] "]")))) () ")")) (compound_statement "{\n        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);\n      }" ({ "{") (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b54) + 0x2844)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7b54) + 0x2844" (pointer_expression "*(int *)(pcVar3 + 0xb7b54)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7b54)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7b54)" (( "(") (binary_expression "pcVar3 + 0xb7b54" (identifier "pcVar3") (+ "+") (number_literal "0xb7b54")) () ")")))) (+ "+") (number_literal "0x2844")) () ")")))) () ")")) (argument_list "(pppppcVar2,1,0,0)" (( "(") (identifier "pppppcVar2") (, ",") (number_literal "1") (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (expression_statement "pppppppcVar24 = (code *******)0x0;" (assignment_expression "pppppppcVar24 = (code *******)0x0" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7b64)" (( "(") (binary_expression "pcVar3 + 0xb7b64" (identifier "pcVar3") (+ "+") (number_literal "0xb7b64")) () ")")))) (+ "+") (number_literal "0x16bc")) () ")")))) () ")")) (argument_list "(pppppcVar2)" (( "(") (identifier "pppppcVar2") () ")"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0x968")) () ")")))) () ")")) (argument_list "(pppppcVar2[2])" (( "(") (subscript_expression "pppppcVar2[2]" (identifier "pppppcVar2") ([ "[") (number_literal "2") (] "]")) () ")"))) (; ";")) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" (identifier "uVar17") (= "=") (subscript_expression "pppppcVar2[8]" (identifier "pppppcVar2") ([ "[") (number_literal "8") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" (else "else") (compound_statement "{\n      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();\n      pppppppcVar24 = (code *******)pppppcVar2[0x1b];\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);\n      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();\n      uVar17 = pppppcVar2[8];\n    }" ({ "{") (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7b64) + 0x16bc)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7b64) + 0x16bc" (pointer_expression "*(int *)(pcVar3 + 0xb7b64)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7b64)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7b64)" (( "(") (binary_expression "pcVar3 + 0xb7b64" (identifier "pcVar3") (+ "+") (number_literal "0xb7b64")) () ")")))) (+ "+") (number_literal "0x16bc")) () ")")))) () ")")) (argument_list "(pppppcVar2)" (( "(") (identifier "pppppcVar2") () ")"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2])" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0x968)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0x968" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0x968")) () ")")))) () ")")) (argument_list "(pppppcVar2[2])" (( "(") (subscript_expression "pppppcVar2[2]" (identifier "pppppcVar2") ([ "[") (number_literal "2") (] "]")) () ")"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd58)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0xd58")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pppppppcVar24 = (code *******)pppppcVar2[0x1b];" (assignment_expression "pppppppcVar24 = (code *******)pppppcVar2[0x1b]" (identifier "pppppppcVar24") (= "=") (cast_expression "(code *******)pppppcVar2[0x1b]" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (subscript_expression "pppppcVar2[0x1b]" (identifier "pppppcVar2") ([ "[") (number_literal "0x1b") (] "]")))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xba0)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xba0" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0xba0")) () ")")))) () ")")) (argument_list "(*pppppcVar2,pppppppcVar24,0)" (( "(") (pointer_expression "*pppppcVar2" (* "*") (identifier "pppppcVar2")) (, ",") (identifier "pppppppcVar24") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7ab8) + 0xd98)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7ab8) + 0xd98" (pointer_expression "*(int *)(pcVar3 + 0xb7ab8)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7ab8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7ab8)" (( "(") (binary_expression "pcVar3 + 0xb7ab8" (identifier "pcVar3") (+ "+") (number_literal "0xb7ab8")) () ")")))) (+ "+") (number_literal "0xd98")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar17 = pppppcVar2[8];" (assignment_expression "uVar17 = pppppcVar2[8]" (identifier "uVar17") (= "=") (subscript_expression "pppppcVar2[8]" (identifier "pppppcVar2") ([ "[") (number_literal "8") (] "]"))) (; ";")) (} "}")))) (} "}")))) (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb78d8);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb78d8)" (identifier "pcVar4") (= "=") (pointer_expression "*(code **)(pcVar3 + 0xb78d8)" (* "*") (cast_expression "(code **)(pcVar3 + 0xb78d8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 0xb78d8)" (( "(") (binary_expression "pcVar3 + 0xb78d8" (identifier "pcVar3") (+ "+") (number_literal "0xb78d8")) () ")"))))) (; ";")) (expression_statement "(*pcVar4)(uVar17);" (call_expression "(*pcVar4)(uVar17)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(uVar17)" (( "(") (identifier "uVar17") () ")"))) (; ";")) (expression_statement "(*pcVar4)(pppppcVar2);" (call_expression "(*pcVar4)(pppppcVar2)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(pppppcVar2)" (( "(") (identifier "pppppcVar2") () ")"))) (; ";")) (labeled_statement "LAB_000d8300:\n  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }" (statement_identifier "LAB_000d8300") (: ":") (if_statement "if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {\n    return pppppppcVar21;\n  }" (if "if") (parenthesized_expression "(iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c))" (( "(") (binary_expression "iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)" (identifier "iStack_1d4") (== "==") (pointer_expression "**(int **)(pcVar3 + 0xb7e2c)" (* "*") (pointer_expression "*(int **)(pcVar3 + 0xb7e2c)" (* "*") (cast_expression "(int **)(pcVar3 + 0xb7e2c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 0xb7e2c)" (( "(") (binary_expression "pcVar3 + 0xb7e2c" (identifier "pcVar3") (+ "+") (number_literal "0xb7e2c")) () ")")))))) () ")")) (compound_statement "{\n    return pppppppcVar21;\n  }" ({ "{") (return_statement "return pppppppcVar21;" (return "return") (identifier "pppppppcVar21") (; ";")) (} "}")))) (expression_statement "pcVar3 = *(code **)(pcVar3 + 0xb7e00);" (assignment_expression "pcVar3 = *(code **)(pcVar3 + 0xb7e00)" (identifier "pcVar3") (= "=") (pointer_expression "*(code **)(pcVar3 + 0xb7e00)" (* "*") (cast_expression "(code **)(pcVar3 + 0xb7e00)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 0xb7e00)" (( "(") (binary_expression "pcVar3 + 0xb7e00" (identifier "pcVar3") (+ "+") (number_literal "0xb7e00")) () ")"))))) (; ";")) (expression_statement "iVar23 = iStack_1d4;" (assignment_expression "iVar23 = iStack_1d4" (identifier "iVar23") (= "=") (identifier "iStack_1d4")) (; ";")) (expression_statement "(*pcVar3)();" (call_expression "(*pcVar3)()" (parenthesized_expression "(*pcVar3)" (( "(") (pointer_expression "*pcVar3" (* "*") (identifier "pcVar3")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar17 = *(undefined4 *)(iVar23 + 0xd0);" (assignment_expression "uVar17 = *(undefined4 *)(iVar23 + 0xd0)" (identifier "uVar17") (= "=") (pointer_expression "*(undefined4 *)(iVar23 + 0xd0)" (* "*") (cast_expression "(undefined4 *)(iVar23 + 0xd0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0xd0)" (( "(") (binary_expression "iVar23 + 0xd0" (identifier "iVar23") (+ "+") (number_literal "0xd0")) () ")"))))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0xd58)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0xd58" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")")))) (+ "+") (number_literal "0xd58")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar18 = *(int *)(iVar23 + 0x88);" (assignment_expression "iVar18 = *(int *)(iVar23 + 0x88)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(iVar23 + 0x88)" (* "*") (cast_expression "(int *)(iVar23 + 0x88)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0x88)" (( "(") (binary_expression "iVar23 + 0x88" (identifier "iVar23") (+ "+") (number_literal "0x88")) () ")"))))) (; ";")) (if_statement "if (iVar18 != 0) {\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }" (if "if") (parenthesized_expression "(iVar18 != 0)" (( "(") (binary_expression "iVar18 != 0" (identifier "iVar18") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    pcVar4 = *(code **)(pcVar3 + 0xb7634);\n    do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);\n  }" ({ "{") (expression_statement "pcVar4 = *(code **)(pcVar3 + 0xb7634);" (assignment_expression "pcVar4 = *(code **)(pcVar3 + 0xb7634)" (identifier "pcVar4") (= "=") (pointer_expression "*(code **)(pcVar3 + 0xb7634)" (* "*") (cast_expression "(code **)(pcVar3 + 0xb7634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 0xb7634)" (( "(") (binary_expression "pcVar3 + 0xb7634" (identifier "pcVar3") (+ "+") (number_literal "0xb7634")) () ")"))))) (; ";")) (do_statement "do {\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    } while (iVar18 != 0);" (do "do") (compound_statement "{\n      iVar18 = *(int *)(iVar18 + 0x10);\n      (*pcVar4)();\n    }" ({ "{") (expression_statement "iVar18 = *(int *)(iVar18 + 0x10);" (assignment_expression "iVar18 = *(int *)(iVar18 + 0x10)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(iVar18 + 0x10)" (* "*") (cast_expression "(int *)(iVar18 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar18 + 0x10)" (( "(") (binary_expression "iVar18 + 0x10" (identifier "iVar18") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "(*pcVar4)();" (call_expression "(*pcVar4)()" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar18 != 0)" (( "(") (binary_expression "iVar18 != 0" (identifier "iVar18") (!= "!=") (number_literal "0")) () ")")) (; ";")) (} "}"))) (expression_statement "*(undefined1 *)(iVar23 + 4) = 0;" (assignment_expression "*(undefined1 *)(iVar23 + 4) = 0" (pointer_expression "*(undefined1 *)(iVar23 + 4)" (* "*") (cast_expression "(undefined1 *)(iVar23 + 4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 4)" (( "(") (binary_expression "iVar23 + 4" (identifier "iVar23") (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (pppppppcVar24 == (code *******)0x0) {\n    uVar11 = 0;\n  }\n  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" (if "if") (parenthesized_expression "(pppppppcVar24 == (code *******)0x0)" (( "(") (binary_expression "pppppppcVar24 == (code *******)0x0" (identifier "pppppppcVar24") (== "==") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    uVar11 = 0;\n  }" ({ "{") (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" (identifier "uVar11") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" (else "else") (if_statement "if (((uint)pppppppcVar24[9] & 0x800) == 0) {\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }\n  else {\n    uVar11 = 0;\n  }" (if "if") (parenthesized_expression "(((uint)pppppppcVar24[9] & 0x800) == 0)" (( "(") (binary_expression "((uint)pppppppcVar24[9] & 0x800) == 0" (parenthesized_expression "((uint)pppppppcVar24[9] & 0x800)" (( "(") (binary_expression "(uint)pppppppcVar24[9] & 0x800" (cast_expression "(uint)pppppppcVar24[9]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "pppppppcVar24[9]" (identifier "pppppppcVar24") ([ "[") (number_literal "9") (] "]"))) (& "&") (number_literal "0x800")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);\n    uVar11 = uVar17;\n    if (iVar18 != 0) {\n      uVar11 = 0;\n    }\n  }" ({ "{") (expression_statement "iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);" (assignment_expression "iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23)" (identifier "iVar18") (= "=") (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x485c)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x485c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")")))) (+ "+") (number_literal "0x485c")) () ")")))) () ")")) (argument_list "(iVar23)" (( "(") (identifier "iVar23") () ")")))) (; ";")) (expression_statement "uVar11 = uVar17;" (assignment_expression "uVar11 = uVar17" (identifier "uVar11") (= "=") (identifier "uVar17")) (; ";")) (if_statement "if (iVar18 != 0) {\n      uVar11 = 0;\n    }" (if "if") (parenthesized_expression "(iVar18 != 0)" (( "(") (binary_expression "iVar18 != 0" (identifier "iVar18") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar11 = 0;\n    }" ({ "{") (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" (identifier "uVar11") (= "=") (number_literal "0")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    uVar11 = 0;\n  }" (else "else") (compound_statement "{\n    uVar11 = 0;\n  }" ({ "{") (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" (identifier "uVar11") (= "=") (number_literal "0")) (; ";")) (} "}")))))) (expression_statement "FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11);" (call_expression "FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11)" (identifier "FUN_000d80a0") (argument_list "(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),\n               *(undefined4 *)(iVar23 + 0x98),uVar11)" (( "(") (pointer_expression "*(undefined4 *)(iVar23 + 0xd8)" (* "*") (cast_expression "(undefined4 *)(iVar23 + 0xd8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0xd8)" (( "(") (binary_expression "iVar23 + 0xd8" (identifier "iVar23") (+ "+") (number_literal "0xd8")) () ")")))) (, ",") (identifier "pppppppcVar24") (, ",") (pointer_expression "*(undefined1 *)(iVar23 + 0xb)" (* "*") (cast_expression "(undefined1 *)(iVar23 + 0xb)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0xb)" (( "(") (binary_expression "iVar23 + 0xb" (identifier "iVar23") (+ "+") (number_literal "0xb")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(iVar23 + 0x98)" (* "*") (cast_expression "(undefined4 *)(iVar23 + 0x98)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0x98)" (( "(") (binary_expression "iVar23 + 0x98" (identifier "iVar23") (+ "+") (number_literal "0x98")) () ")")))) (, ",") (identifier "uVar11") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(iVar23 + 0xd8) = 0;" (assignment_expression "*(undefined4 *)(iVar23 + 0xd8) = 0" (pointer_expression "*(undefined4 *)(iVar23 + 0xd8)" (* "*") (cast_expression "(undefined4 *)(iVar23 + 0xd8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0xd8)" (( "(") (binary_expression "iVar23 + 0xd8" (identifier "iVar23") (+ "+") (number_literal "0xd8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7878) + 0x6cb0)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7878) + 0x6cb0" (pointer_expression "*(int *)(pcVar3 + 0xb7878)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7878)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7878)" (( "(") (binary_expression "pcVar3 + 0xb7878" (identifier "pcVar3") (+ "+") (number_literal "0xb7878")) () ")")))) (+ "+") (number_literal "0x6cb0")) () ")")))) () ")")) (argument_list "(iVar23)" (( "(") (identifier "iVar23") () ")"))) (; ";")) (if_statement "if (*(char *)(iVar23 + 0xf) == '\0') {\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }\n  else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" (if "if") (parenthesized_expression "(*(char *)(iVar23 + 0xf) == '\0')" (( "(") (binary_expression "*(char *)(iVar23 + 0xf) == '\0'" (pointer_expression "*(char *)(iVar23 + 0xf)" (* "*") (cast_expression "(char *)(iVar23 + 0xf)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0xf)" (( "(") (binary_expression "iVar23 + 0xf" (identifier "iVar23") (+ "+") (number_literal "0xf")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }\n    FUN_000c96c0(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" ({ "{") (if_statement "if (**(int **)(iVar23 + 0x40) != 0) {\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }" (if "if") (parenthesized_expression "(**(int **)(iVar23 + 0x40) != 0)" (( "(") (binary_expression "**(int **)(iVar23 + 0x40) != 0" (pointer_expression "**(int **)(iVar23 + 0x40)" (* "*") (pointer_expression "*(int **)(iVar23 + 0x40)" (* "*") (cast_expression "(int **)(iVar23 + 0x40)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar23 + 0x40)" (( "(") (binary_expression "iVar23 + 0x40" (identifier "iVar23") (+ "+") (number_literal "0x40")) () ")"))))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();\n      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);\n    }" ({ "{") (expression_statement "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();" (assignment_expression "uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" (identifier "uVar11") (= "=") (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))()" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x47e4)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x47e4" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")")))) (+ "+") (number_literal "0x47e4")) () ")")))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7814) + 0x447c)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7814) + 0x447c" (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")")))) (+ "+") (number_literal "0x447c")) () ")")))) () ")")) (argument_list "(iVar23,uVar11)" (( "(") (identifier "iVar23") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_000c96c0(iVar23);" (call_expression "FUN_000c96c0(iVar23)" (identifier "FUN_000c96c0") (argument_list "(iVar23)" (( "(") (identifier "iVar23") () ")"))) (; ";")) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" (else "else") (compound_statement "{\n    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);\n    iVar18 = *(int *)(pcVar3 + 0xb7814);\n  }" ({ "{") (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x2314)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x2314" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb78c0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb78c0)" (( "(") (binary_expression "pcVar3 + 0xb78c0" (identifier "pcVar3") (+ "+") (number_literal "0xb78c0")) () ")")))) (+ "+") (number_literal "0x2314")) () ")")))) () ")")) (argument_list "(iVar23)" (( "(") (identifier "iVar23") () ")"))) (; ";")) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")"))))) (; ";")) (} "}")))) (expression_statement "(*(code *)(iVar18 + 0xd98))();" (call_expression "(*(code *)(iVar18 + 0xd98))()" (parenthesized_expression "(*(code *)(iVar18 + 0xd98))" (( "(") (pointer_expression "*(code *)(iVar18 + 0xd98)" (* "*") (cast_expression "(code *)(iVar18 + 0xd98)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar18 + 0xd98)" (( "(") (binary_expression "iVar18 + 0xd98" (identifier "iVar18") (+ "+") (number_literal "0xd98")) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar18 = *(int *)(pcVar3 + 0xb7814);" (assignment_expression "iVar18 = *(int *)(pcVar3 + 0xb7814)" (identifier "iVar18") (= "=") (pointer_expression "*(int *)(pcVar3 + 0xb7814)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7814)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7814)" (( "(") (binary_expression "pcVar3 + 0xb7814" (identifier "pcVar3") (+ "+") (number_literal "0xb7814")) () ")"))))) (; ";")) (expression_statement "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));" (call_expression "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40))" (parenthesized_expression "(*(code *)(iVar18 + 0x968))" (( "(") (pointer_expression "*(code *)(iVar18 + 0x968)" (* "*") (cast_expression "(code *)(iVar18 + 0x968)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar18 + 0x968)" (( "(") (binary_expression "iVar18 + 0x968" (identifier "iVar18") (+ "+") (number_literal "0x968")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(iVar23 + 0x40))" (( "(") (pointer_expression "*(undefined4 *)(iVar23 + 0x40)" (* "*") (cast_expression "(undefined4 *)(iVar23 + 0x40)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0x40)" (( "(") (binary_expression "iVar23 + 0x40" (identifier "iVar23") (+ "+") (number_literal "0x40")) () ")")))) () ")"))) (; ";")) (expression_statement "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));" (call_expression "(*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c))" (parenthesized_expression "(*(code *)(iVar18 + 0x968))" (( "(") (pointer_expression "*(code *)(iVar18 + 0x968)" (* "*") (cast_expression "(code *)(iVar18 + 0x968)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar18 + 0x968)" (( "(") (binary_expression "iVar18 + 0x968" (identifier "iVar18") (+ "+") (number_literal "0x968")) () ")")))) () ")")) (argument_list "(*(undefined4 *)(iVar23 + 0x3c))" (( "(") (pointer_expression "*(undefined4 *)(iVar23 + 0x3c)" (* "*") (cast_expression "(undefined4 *)(iVar23 + 0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0x3c)" (( "(") (binary_expression "iVar23 + 0x3c" (identifier "iVar23") (+ "+") (number_literal "0x3c")) () ")")))) () ")"))) (; ";")) (expression_statement "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);" (call_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17)" (parenthesized_expression "(*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))" (( "(") (pointer_expression "*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" (* "*") (cast_expression "(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb78c0) + 0x52c)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb78c0) + 0x52c" (pointer_expression "*(int *)(pcVar3 + 0xb78c0)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb78c0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb78c0)" (( "(") (binary_expression "pcVar3 + 0xb78c0" (identifier "pcVar3") (+ "+") (number_literal "0xb78c0")) () ")")))) (+ "+") (number_literal "0x52c")) () ")")))) () ")")) (argument_list "(uVar17)" (( "(") (identifier "uVar17") () ")"))) (; ";")) (expression_statement "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));" (call_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))\n            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c))" (parenthesized_expression "(**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))" (( "(") (pointer_expression "**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" (* "*") (pointer_expression "*(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" (* "*") (cast_expression "(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(pcVar3 + 0xb7604) + -0x1adc)" (( "(") (binary_expression "*(int *)(pcVar3 + 0xb7604) + -0x1adc" (pointer_expression "*(int *)(pcVar3 + 0xb7604)" (* "*") (cast_expression "(int *)(pcVar3 + 0xb7604)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar3 + 0xb7604)" (( "(") (binary_expression "pcVar3 + 0xb7604" (identifier "pcVar3") (+ "+") (number_literal "0xb7604")) () ")")))) (+ "+") (number_literal "-0x1adc")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c))" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c)" (* "*") (cast_expression "(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar23 + 0xd4) + 0x2c)" (( "(") (binary_expression "*(int *)(iVar23 + 0xd4) + 0x2c" (pointer_expression "*(int *)(iVar23 + 0xd4)" (* "*") (cast_expression "(int *)(iVar23 + 0xd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar23 + 0xd4)" (( "(") (binary_expression "iVar23 + 0xd4" (identifier "iVar23") (+ "+") (number_literal "0xd4")) () ")")))) (+ "+") (number_literal "0x2c")) () ")")))) () ")"))) (; ";")) (expression_statement "(**(code **)(pcVar3 + 0xb7634))(iVar23);" (call_expression "(**(code **)(pcVar3 + 0xb7634))(iVar23)" (parenthesized_expression "(**(code **)(pcVar3 + 0xb7634))" (( "(") (pointer_expression "**(code **)(pcVar3 + 0xb7634)" (* "*") (pointer_expression "*(code **)(pcVar3 + 0xb7634)" (* "*") (cast_expression "(code **)(pcVar3 + 0xb7634)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar3 + 0xb7634)" (( "(") (binary_expression "pcVar3 + 0xb7634" (identifier "pcVar3") (+ "+") (number_literal "0xb7634")) () ")"))))) () ")")) (argument_list "(iVar23)" (( "(") (identifier "iVar23") () ")"))) (; ";")) (return_statement "return (code *******)0x0;" (return "return") (cast_expression "(code *******)0x0" (( "(") (type_descriptor "code *******" (type_identifier "code") (abstract_pointer_declarator "*******" (* "*") (abstract_pointer_declarator "******" (* "*") (abstract_pointer_declarator "*****" (* "*") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))))))) () ")") (number_literal "0x0")) (; ";")) (} "}")))
(translation_unit (function_definition type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))))))))))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator 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: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (array_declarator declarator: (identifier) size: (number_literal)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (pointer_declarator declarator: (identifier)))))))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (pointer_expression argument: (subscript_expression argument: (identifier) index: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (pointer_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (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: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (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: (identifier) right: (number_literal)))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (for_statement initializer: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) update: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (number_literal)))) right: (number_literal)))) right: (identifier))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)) (number_literal))))) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal)))) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (binary_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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (number_literal)))) right: (number_literal)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (binary_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: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (number_literal)))) right: (number_literal)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier))))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))))))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier) (number_literal)))))) (goto_statement label: (statement_identifier)))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (subscript_expression argument: (parenthesized_expression (pointer_expression argument: (identifier))) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (pointer_expression argument: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))) value: (pointer_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (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: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) right: (char_literal (escape_sequence)))))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (subscript_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)) index: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal)))) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (goto_statement label: (statement_identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (subscript_expression argument: (parenthesized_expression (pointer_expression argument: (identifier))) index: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (subscript_expression argument: (subscript_expression argument: (identifier) index: (number_literal)) index: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (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: (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)))))))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (number_literal) (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (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: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_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 (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) right: (number_literal)) right: (binary_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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) right: (number_literal)))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal) (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) right: (number_literal)) 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: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)) right: (number_literal))) (subscript_expression argument: (identifier) index: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (field_expression argument: (identifier) field: (field_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (subscript_expression argument: (identifier) index: (number_literal)) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)) right: (number_literal))))) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))))) condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (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 (number_literal) (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (field_expression argument: (identifier) field: (field_identifier))))) right: (parenthesized_expression (parenthesized_expression (binary_expression left: (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier))))))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal) (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_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: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier))))) right: (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))))))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator 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: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (identifier))))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))) (labeled_statement label: (statement_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))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))))) (goto_statement label: (statement_identifier))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (break_statement)) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (call_expression function: (identifier) arguments: (argument_list (identifier))) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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))))) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (number_literal) (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal)))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (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: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (pointer_expression argument: (identifier)))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))))))) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_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 (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (subscript_expression argument: (identifier) index: (number_literal)))) right: (number_literal))))))) arguments: (argument_list (subscript_expression argument: (identifier) index: (number_literal)) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal) (number_literal) (number_literal) (identifier) (identifier) (identifier) (number_literal) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (subscript_expression argument: (identifier) index: (number_literal)) (number_literal) (pointer_expression argument: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (subscript_expression argument: (identifier) index: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (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 declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_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 (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_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 (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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 (pointer_expression argument: (identifier)) (identifier) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) 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))))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list)))) condition: (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))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (subscript_expression argument: (identifier) index: (number_literal))) right: (number_literal))) 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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier)))) (expression_statement (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (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: (char_literal (escape_sequence)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (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)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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)))))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (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 (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_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 (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_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 (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator)))))))) value: (number_literal))))))

code *******
MASKED(code *******param_1,code *******param_2,code *******param_3,code *******param_4)

{
  char cVar1;
  code *****pppppcVar2;
  code *pcVar3;
  code *pcVar4;
  code ****ppppcVar5;
  code *******pppppppcVar6;
  code *pcVar7;
  undefined4 *puVar8;
  undefined2 *puVar9;
  int iVar10;
  undefined4 uVar11;
  code ***pppcVar12;
  int extraout_v1;
  undefined2 *puVar13;
  int *piVar14;
  code ******ppppppcVar15;
  code *******pppppppcVar16;
  undefined4 uVar17;
  int iVar18;
  uint uVar19;
  uint uVar20;
  code *******pppppppcVar21;
  code *******unaff_s2;
  code *******unaff_s3;
  code *******unaff_s5;
  code *******unaff_s6;
  code *unaff_s7;
  undefined *puVar22;
  code *******unaff_s8;
  int iVar23;
  code *******pppppppcVar24;
  code *******pppppppcVar25;
  int iStack_1d8;
  int iStack_1d4;
  code ******ppppppcStack_1cc;
  code ******ppppppcStack_1c8;
  code ******ppppppcStack_1c4;
  code ******ppppppcStack_1c0;
  code ******ppppppcStack_1bc;
  code ******ppppppcStack_1b8;
  code *pcStack_1b4;
  undefined8 uStack_1a0;
  undefined *puStack_198;
  code ******ppppppcStack_18c;
  code ******ppppppcStack_188;
  code ******ppppppcStack_184;
  code ******ppppppcStack_180;
  code ***pppcStack_17c;
  code ******ppppppcStack_178;
  undefined4 uStack_174;
  code ******ppppppcStack_170;
  code ******ppppppcStack_16c;
  code ******ppppppcStack_168;
  undefined4 *puStack_164;
  uint uStack_160;
  code ******ppppppcStack_15c;
  code ******ppppppcStack_158;
  int iStack_154;
  undefined2 *puStack_150;
  code *pcStack_14c;
  code *****pppppcStack_148;
  code *pcStack_144;
  code ******ppppppcStack_140;
  code ******ppppppcStack_13c;
  undefined4 *puStack_138;
  code ******ppppppcStack_134;
  int iStack_130;
  code *****pppppcStack_12c;
  undefined8 uStack_128;
  code *****pppppcStack_120;
  code ******ppppppcStack_11c;
  int iStack_118;
  code *****apppppcStack_114 [27];
  code ******ppppppcStack_a8;
  code ******ppppppcStack_a4;
  code ******ppppppcStack_a0;
  code ******ppppppcStack_9c;
  code ******ppppppcStack_98;
  code ******ppppppcStack_94;
  code ******ppppppcStack_90;
  code *pcStack_8c;
  code ******ppppppcStack_88;
  code *pcStack_84;
  code ******ppppppcStack_78;
  code ******local_70;
  code ******local_6c;
  undefined4 uStack_64;
  code ***local_60;
  code ******local_5c;
  code *****local_50;
  code ***local_4c;
  code ******local_40;
  code ******local_38;
  code ******local_34;
  uint local_2c;
  
  local_2c = *(uint *)PTR___stack_chk_guard_0018fecc;
  pppppppcVar24 = param_2;
  (*(code *)PTR_sqlite3_mutex_enter_0018fbac)(param_1[5][3]);
  (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(param_1[6]);
  if (*param_1 == (code ******)0x0) {
    pppppppcVar21 = (code *******)param_1[7];
    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d7330;
    ppppppcVar15 = param_1[6];
    local_60 = (code ***)*ppppppcVar15[1];
    local_4c = (code ***)*param_1[1][1];
LAB_000d69a8:
    param_3 = (code *******)0x0;
    if (*(char *)(ppppppcVar15 + 2) == '\0') {
      pppppppcVar24 = (code *******)0x0;
      pppppppcVar21 = (code *******)FUN_000cb3f8();
      if (param_1[3] == (code ******)0x0) {
        local_50 = (code *****)0x1;
        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;
        goto LAB_000d6aa4;
      }
      local_50 = (code *****)0x1;
LAB_000d72d0:
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;
      ppppppcVar15 = param_1[6];
    }
    else {
      local_50 = (code *****)param_1[3];
      if ((code ******)local_50 == (code ******)0x0) {
LAB_000d6aa4:
        param_4 = (code *******)0x0;
        param_3 = (code *******)0xffffffff;
        pppppppcVar24 = (code *******)param_1[6][1][8];
        iVar23 = (*(code *)(PTR_LAB_0018fc04 + 0xc6c))(param_1[1]);
        if (iVar23 != 7) goto LAB_000d69c4;
        ppppppcVar15 = param_1[6];
        pppppppcVar21 = (code *******)&DAT_00000007;
        goto LAB_000d6a48;
      }
      local_50 = (code *****)0x0;
LAB_000d69c4:
      param_3 = param_1 + 2;
      if (param_1[3] == (code ******)0x0) {
        pppppppcVar24 = (code *******)0x2;
        pppppppcVar21 = (code *******)FUN_000cb3f8(param_1[1]);
        if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6a44;
        param_1[3] = (code ******)0x1;
      }
      ppppppcVar15 = param_1[6];
    }
    pppppcVar2 = ppppppcVar15[1];
    local_5c = (code ******)pppppcVar2[8];
    local_40 = (code ******)param_1[1][1][8];
    cVar1 = *(char *)((int)*param_1[1][1] + 5);
    if (cVar1 == '\x05') {
      pppppppcVar21 = (code *******)&DAT_00000008;
      if (local_40 == local_5c) {
        pppppppcVar21 = (code *******)0x0;
      }
    }
    else {
      pppppppcVar21 = (code *******)0x0;
    }
LAB_000d6a70:
    unaff_s6 = (code *******)PTR_DAT_0018f948;
    unaff_s5 = (code *******)pppppcVar2[0xb];
    unaff_s8 = &local_38;
    unaff_s7 = (code *)(PTR_LAB_0018fb58 + 0x491c);
    pcVar3 = (code *)(PTR_DAT_0018fbc8 + 0x6de8);
    pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x49ec);
    for (unaff_s3 = (code *******)0x0; ((int)param_2 < 0 || ((int)unaff_s3 < (int)param_2));
        unaff_s3 = (code *******)((int)unaff_s3 + 1)) {
      unaff_s2 = (code *******)param_1[4];
      if (unaff_s5 < unaff_s2) {
        if (pppppppcVar21 == (code *******)0x0) {
          param_1[9] = (code ******)unaff_s5;
          param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));
          goto LAB_000d6c9c;
        }
        goto LAB_000d6c94;
      }
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6c94;
      if (param_1[6][1][8] == (code ****)0x0) {
        trap(7);
      }
      param_4 = (code *******)0x2;
      if (((code *******)(*(uint *)((int)unaff_s6 + -0x1b80) / (uint)param_1[6][1][8] + 1) !=
           unaff_s2) &&
         (pppppppcVar24 = unaff_s2, param_3 = unaff_s8,
         pppppppcVar21 = (code *******)(*unaff_s7)(local_60), pppppppcVar21 == (code *******)0x0)) {
        param_4 = (code *******)0x0;
        param_3 = (code *******)local_38[1];
        pppppppcVar24 = unaff_s2;
        pppppppcVar21 = (code *******)(*pcVar3)(param_1);
        (*pcVar4)(local_38);
      }
      param_1[4] = (code ******)((int)param_1[4] + 1);
    }
    if (pppppppcVar21 == (code *******)0x0) {
      param_1[9] = (code ******)unaff_s5;
      param_1[8] = (code ******)((int)unaff_s5 + (1 - (int)param_1[4]));
      if (unaff_s5 < param_1[4]) goto LAB_000d6c9c;
      if (param_1[10] == (code ******)0x0) {
        ppppcVar5 = *param_1[6][1];
        param_1[0xb] = (code ******)ppppcVar5[0x16];
        ppppcVar5[0x16] = (code ***)param_1;
        param_1[10] = (code ******)0x1;
      }
      if ((code ******)local_50 != (code ******)0x0) goto LAB_000d6c34;
      goto LAB_000d6e5c;
    }
LAB_000d6c94:
    if (pppppppcVar21 == (code *******)0x65) {
LAB_000d6c9c:
      if (unaff_s5 == (code *******)0x0) {
        unaff_s2 = (code *******)param_1[1];
        (*(code *)(PTR_LAB_0018fbd0 + 0x40f0))(unaff_s2);
        unaff_s2[1][0xb] = (code *****)0x0;
        pppppppcVar21 = (code *******)FUN_000cb270(unaff_s2[1]);
        (*(code *)(PTR_LAB_0018fb58 + 0x524c))(unaff_s2);
        if (pppppppcVar21 == (code *******)0x0) {
          unaff_s5 = (code *******)0x1;
        }
        else {
          unaff_s5 = (code *******)0x1;
          if (pppppppcVar21 != (code *******)0x65) goto LAB_000d6e48;
        }
      }
      param_3 = (code *******)((int)param_1[2] + 1);
      pppppppcVar21 = (code *******)FUN_000cbf70(param_1[1],1);
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
      if (*param_1 != (code ******)0x0) {
        (*(code *)(PTR_LAB_0018fc04 + -0x824))();
      }
      if ((cVar1 == '\x05') &&
         (pppppppcVar21 = (code *******)FUN_000cc064(param_1[1],2),
         pppppppcVar21 != (code *******)0x0)) goto LAB_000d6e48;
      pcVar3 = (code *)PTR_DAT_0018f948;
      if ((int)local_5c < (int)local_40) {
        if ((code *******)local_5c == (code *******)0x0) {
          trap(7);
        }
        iVar23 = (int)local_40 / (int)local_5c;
        if (iVar23 == 0) {
          trap(7);
        }
        pppppppcVar24 = (code *******)((int)((int)unaff_s5 + iVar23 + -1) / iVar23);
        if (param_1[1][1][8] == (code ****)0x0) {
          trap(7);
        }
        if ((code *******)(*(uint *)(PTR_DAT_0018f948 + -0x1b80) / (uint)param_1[1][1][8] + 1) ==
            pppppppcVar24) {
          pppppppcVar24 = (code *******)((int)pppppppcVar24 + -1);
        }
        param_2 = (code *******)((int)local_5c >> 0x1f);
        pppppppcVar25 = (code *******)(ZEXT48(unaff_s5) * ZEXT48(local_5c));
        pppppppcVar6 = (code *******)
                       ((int)param_2 * (int)unaff_s5 + ((int)unaff_s5 >> 0x1f) * (int)local_5c +
                       (int)(ZEXT48(unaff_s5) * ZEXT48(local_5c) >> 0x20));
        pppcVar12 = (code ***)local_4c[0xf];
        unaff_s5 = (code *******)local_4c[6];
        param_4 = pppppppcVar25;
        unaff_s6 = (code *******)local_5c;
        unaff_s7 = pcVar3;
        if (pppppppcVar24 <= unaff_s5) {
          unaff_s3 = &local_38;
          unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x491c);
          pcVar4 = (code *)(PTR_DAT_0018fbc8 + 0x6d30);
          pcVar7 = (code *)(PTR_LAB_0018fb58 + 0x49ec);
          do {
            if (param_1[1][1][8] == (code ****)0x0) {
              trap(7);
            }
            param_4 = (code *******)0x0;
            if ((code *******)(*(uint *)(pcVar3 + -0x1b80) / (uint)param_1[1][1][8] + 1) !=
                pppppppcVar24) {
              param_3 = unaff_s3;
              pppppppcVar21 = (code *******)(*(code *)unaff_s8)(local_4c,pppppppcVar24);
              if (pppppppcVar21 == (code *******)0x0) {
                pppppppcVar21 = (code *******)(*pcVar4)(local_38);
                (*pcVar7)(local_38);
              }
              unaff_s2 = (code *******)((int)pppppppcVar24 + 1);
              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
            }
            pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);
          } while (pppppppcVar24 <= unaff_s5);
        }
        param_3 = (code *******)0x1;
        pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);
        local_40 = (code ******)((int)local_40 + *(int *)(PTR_DAT_0018f948 + -0x1b80));
        unaff_s5 = (code *******)((int)local_40 >> 0x1f);
        if (((int)pppppppcVar6 < (int)unaff_s5) ||
           ((unaff_s5 == pppppppcVar6 && (pppppppcVar25 < local_40)))) {
          unaff_s5 = pppppppcVar6;
          local_40 = (code ******)pppppppcVar25;
        }
        unaff_s3 = (code *******)((int)local_5c + *(int *)(PTR_DAT_0018f948 + -0x1b80));
        unaff_s2 = (code *******)((int)unaff_s3 >> 0x1f);
        if (pppppppcVar21 == (code *******)0x0) {
          if (((int)unaff_s2 < (int)unaff_s5) || ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))))
          {
            pcVar3 = (code *)(PTR_LAB_0018fb58 + 0x491c);
            pcVar4 = (code *)(PTR_LAB_0018fb58 + 0x9e0);
            unaff_s8 = (code *******)(PTR_LAB_0018fb58 + 0x49ec);
            pppppppcVar24 = unaff_s3;
            do {
              local_38 = (code ******)0x0;
              (*(code *)PTR_FUN_0018fa10)(unaff_s2,pppppppcVar24,param_2,local_5c);
              param_4 = (code *******)0x0;
              param_3 = &local_38;
              pppppppcVar21 = (code *******)(*pcVar3)(local_60,extraout_v1 + 1);
              unaff_s7 = pcVar3;
              if (pppppppcVar21 != (code *******)0x0) {
                (*(code *)(PTR_LAB_0018fb58 + 0x49ec))(local_38);
                unaff_s3 = pppppppcVar24;
                goto LAB_000d6e48;
              }
              param_3 = (code *******)local_5c;
              local_70 = (code ******)unaff_s2;
              local_6c = (code ******)pppppppcVar24;
              pppppppcVar21 = (code *******)(*pcVar4)(pppcVar12,local_38[1]);
              (*(code *)unaff_s8)(local_38);
              unaff_s3 = (code *******)((int)pppppppcVar24 + (int)local_5c);
              unaff_s2 = (code *******)
                         ((code *)((int)unaff_s2 + (int)param_2) + (unaff_s3 < pppppppcVar24));
              if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
              pppppppcVar24 = unaff_s3;
            } while (((int)unaff_s2 < (int)unaff_s5) ||
                    ((unaff_s5 == unaff_s2 && (unaff_s3 < local_40))));
          }
          pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa6c))(pppcVar12,&local_38);
          unaff_s7 = pcVar3;
          if ((pppppppcVar21 == (code *******)0x0) &&
             ((((int)local_38 <= (int)pppppppcVar6 &&
               (((code *******)local_38 != pppppppcVar6 || (local_34 <= pppppppcVar25)))) ||
              (pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0xa14))(pppcVar12),
              param_3 = pppppppcVar6, param_4 = pppppppcVar25, pppppppcVar21 == (code *******)0x0)))
             ) {
            pppppppcVar21 = (code *******)(*(code *)(PTR_LAB_0018fb58 + 0x4a30))(local_4c,0);
            goto LAB_000d6f68;
          }
        }
        goto LAB_000d6e48;
      }
      if ((code *******)local_40 == (code *******)0x0) {
        trap(7);
      }
      unaff_s5 = (code *******)(((int)local_5c / (int)local_40) * (int)unaff_s5);
      local_4c[6] = (code **)unaff_s5;
      param_3 = (code *******)0x0;
      pppppppcVar21 = (code *******)FUN_000d5e38(local_4c,0);
LAB_000d6f68:
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
      pppppppcVar24 = (code *******)0x0;
      pppppppcVar21 = (code *******)FUN_000ca0b8(param_1[1]);
      if (pppppppcVar21 != (code *******)0x0) goto LAB_000d6e48;
      if ((code ******)local_50 != (code ******)0x0) {
        pppppppcVar21 = (code *******)0x65;
        goto LAB_000d6c34;
      }
      pppppppcVar21 = (code *******)0x65;
    }
    else {
LAB_000d6e48:
      pppppppcVar24 = (code *******)0x0;
      if ((code ******)local_50 != (code ******)0x0) {
LAB_000d6c34:
        FUN_000d6488(param_1[6],0);
        pppppppcVar24 = (code *******)0x0;
        FUN_000ca0b8(param_1[6]);
      }
      if (pppppppcVar21 == (code *******)0xc0a) {
        pppppppcVar21 = (code *******)&DAT_00000007;
      }
    }
LAB_000d6e5c:
    param_1[7] = (code ******)pppppppcVar21;
  }
  else {
    (*(code *)PTR_sqlite3_mutex_enter_0018fbac)((*param_1)[3]);
    pppppppcVar21 = (code *******)param_1[7];
    if (pppppppcVar21 == (code *******)0x0) {
      ppppppcVar15 = param_1[6];
LAB_000d6970:
      local_60 = (code ***)*ppppppcVar15[1];
      local_4c = (code ***)*param_1[1][1];
      if ((*param_1 == (code ******)0x0) || (*(char *)(ppppppcVar15[1] + 5) != '\x02'))
      goto LAB_000d69a8;
      if (param_1[3] != (code ******)0x0) {
        local_50 = (code *****)0x0;
        pppppppcVar21 = (code *******)&DAT_00000005;
        goto LAB_000d72d0;
      }
      pppppppcVar21 = (code *******)&DAT_00000005;
      local_50 = (code *****)0x0;
LAB_000d6a44:
      ppppppcVar15 = param_1[6];
LAB_000d6a48:
      pppppcVar2 = ppppppcVar15[1];
      local_5c = (code ******)pppppcVar2[8];
      local_40 = (code ******)param_1[1][1][8];
      cVar1 = *(char *)((int)*param_1[1][1] + 5);
      goto LAB_000d6a70;
    }
LAB_000d7330:
    if ((code *)((int)pppppppcVar21 + -5) < (code *)0x2) {
      ppppppcVar15 = param_1[6];
      goto LAB_000d6970;
    }
  }
  if (*param_1 != (code ******)0x0) {
    (*(code *)PTR_sqlite3_mutex_leave_0018fba8)((*param_1)[3]);
  }
  (*(code *)(PTR_LAB_0018fb58 + 0x524c))(param_1[6]);
  (*(code *)PTR_sqlite3_mutex_leave_0018fba8)(param_1[5][3]);
  if (local_2c == *(uint *)PTR___stack_chk_guard_0018fecc) {
    return pppppppcVar21;
  }
  pcVar3 = FUN_000d7350;
  uVar20 = local_2c;
  puVar22 = PTR___stack_chk_fail_0018fea0;
  (*(code *)PTR___stack_chk_fail_0018fea0)();
  puStack_198 = puVar22 + 0xc05d0;
  ppppppcStack_188 = local_70;
  uStack_174 = uStack_64;
  pppcStack_17c = local_60;
  ppppppcStack_178 = local_5c;
  apppppcStack_114[0x1a] = (code *****)**(undefined4 **)(puVar22 + 0xb8b7c);
  iStack_130 = 0;
  ppppppcStack_18c = (code ******)param_4;
  ppppppcStack_180 = (code ******)pppppppcVar24;
  ppppppcStack_a8 = (code ******)param_1;
  ppppppcStack_a4 = (code ******)pppppppcVar21;
  ppppppcStack_a0 = (code ******)unaff_s2;
  ppppppcStack_9c = (code ******)unaff_s3;
  ppppppcStack_98 = (code ******)param_2;
  ppppppcStack_94 = (code ******)unaff_s5;
  ppppppcStack_90 = (code ******)unaff_s6;
  pcStack_8c = unaff_s7;
  ppppppcStack_88 = (code ******)unaff_s8;
  pcStack_84 = pcVar3;
  ppppppcStack_78 = (code ******)param_3;
  if (*(char *)(uVar20 + 0x2e) == '\0') {
    param_3 = (code *******)0x1;
    pppppppcVar24 = (code *******)0x1;
    pppppppcVar25 = (code *******)(*(code *)(*(int *)(puVar22 + 0xb8808) + 0x4cd8))();
    pppppppcVar6 = pppppppcVar25;
    if (pppppppcVar25 == (code *******)0x0) {
      *(undefined1 *)(uVar20 + 0x2d) = 1;
      param_4 = (code *******)0x0;
      if ((code *******)ppppppcStack_78 == (code *******)0x0) {
        ppppppcStack_170 = ppppppcStack_78;
LAB_000d7410:
        param_1 = (code *******)
                  (*(code *)(*(int *)(puStack_198 + -0x7c94) + -0x1cfc))(uVar20,&iStack_130);
        pppppppcVar6 = param_1;
        if (iStack_130 != 0) {
          param_4 = (code *******)0x0;
          if (*(int *)**(undefined4 **)(uVar20 + 4) < 3) {
            if (param_1 == (code *******)0x0) goto LAB_000d74f0;
LAB_000d7e2c:
            (**(code **)(puStack_198 + -0x7b20))(uVar20 + 0x34,0,0x30);
          }
          else {
            uStack_1a0 = uStack_1a0 & 0xffffffff;
            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xb40))();
            if (param_1 != (code *******)0x0) goto LAB_000d8034;
LAB_000d74f0:
            ppppppcStack_168 = *(code *******)(uVar20 + 0x44);
            puVar22 = puStack_198;
            if ((code *******)ppppppcStack_168 == (code *******)0x0) {
              if ((code *******)ppppppcStack_170 == (code *******)0x0) {
                puStack_164 = (undefined4 *)0x0;
                pppppppcVar24 = unaff_s5;
                pppppppcVar6 = (code *******)0x0;
                goto LAB_000d8010;
              }
              puStack_164 = (undefined4 *)0x0;
LAB_000d7f78:
              param_1 = (code *******)ppppppcStack_170;
              pppppppcVar24 = unaff_s5;
              pppppppcVar6 = pppppppcVar25;
              if (1 < (int)ppppppcStack_170) {
                sqlite3_randomness(4,&pppppcStack_120);
                uStack_1a0 = CONCAT44(4,uStack_1a0._4_4_);
                param_4 = (code *******)&DAT_00000004;
                pppppppcVar6 = (code *******)
                               (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                         (uVar20,ppppppcStack_18c,ppppppcStack_188);
                puVar22 = puStack_198;
                if (pppppppcVar6 == (code *******)0x0) {
                  if (param_1 == (code *******)0x3) {
                    (*(code *)(*(int *)(puStack_198 + -0x7d50) + -0x7110))(uVar20,pppppcStack_120);
                    param_4 = (code *******)0x0;
                    pppppppcVar6 = (code *******)
                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa14))
                                             (*(undefined4 *)(uVar20 + 8));
                  }
                  (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20,4,4);
                  puVar22 = puStack_198;
                }
              }
LAB_000d8010:
              (**(code **)(puVar22 + -0x7fa8))(puStack_164);
              unaff_s5 = pppppppcVar24;
            }
            else {
              ppppppcStack_15c =
                   (code ******)
                   ((*(ushort *)(uVar20 + 0x42) & 1) << 0x10 | *(ushort *)(uVar20 + 0x42) & 0xfe00);
              if (ppppppcStack_15c == (code ******)&_gp_1) {
                iVar23 = **(int **)(uVar20 + 0x20);
                param_1 = (code *******)0x1;
                iStack_154 = iVar23;
                if (*(code ********)(iVar23 + 0x60) < ppppppcStack_168) {
                  ppppppcStack_140 = *(code *******)(uVar20 + 0x48);
                  unaff_s5 = (code *******)0x1;
                  ppppppcStack_184 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c);
                  unaff_s3 = (code *******)ppppppcStack_168;
                  param_2 = pppppppcVar25;
                  ppppppcStack_168 = (code ******)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c);
                  do {
                    pppppppcVar21 = (code *******)(iVar23 + (int)param_1 * 4);
                    unaff_s2 = (code *******)pppppppcVar21[0x19];
                    pppppppcVar6 = (code *******)((int)param_1 + 3);
                    pppppppcVar24 = unaff_s5;
                    if (unaff_s2 < unaff_s3) {
                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
                      ppppppcStack_16c = (code ******)pppppppcVar6;
                      param_2 = (code *******)
                                (*(code *)ppppppcStack_184)
                                          (uVar20,ppppppcStack_18c,ppppppcStack_188);
                      if (param_2 == (code *******)0x0) {
                        pppppppcVar16 = (code *******)0xffffffff;
                        if (param_1 == (code *******)0x1) {
                          pppppppcVar16 = unaff_s3;
                        }
                        pppppppcVar21[0x19] = (code ******)pppppppcVar16;
                        (*(code *)ppppppcStack_168)(uVar20,ppppppcStack_16c,1);
                        param_4 = pppppppcVar6;
                        puVar22 = puStack_198;
                      }
                      else {
                        param_4 = pppppppcVar6;
                        unaff_s3 = unaff_s2;
                        puVar22 = puStack_198;
                        if (param_2 != (code *******)&DAT_00000005) {
                          puStack_164 = (undefined4 *)0x0;
                          pppppppcVar6 = param_2;
                          goto LAB_000d8010;
                        }
                        ppppppcStack_18c = (code ******)0x0;
                      }
                    }
                    param_1 = (code *******)((int)param_1 + 1);
                  } while (param_1 != (code *******)&DAT_00000005);
                  ppppppcStack_168 = (code ******)unaff_s3;
                  if (*(code ********)(iStack_154 + 0x60) < unaff_s3) {
                    param_1 = *(code ********)(iStack_154 + 0x60);
                    pppppppcVar6 = *(code ********)(uVar20 + 0x44);
                    ppppppcStack_158 = (code ******)((uint)((int)pppppppcVar6 + 0x21) >> 0xc);
                    pppppppcVar21 = (code *******)((int)ppppppcStack_158 + 1);
                    unaff_s2 = (code *******)
                               ((int)((int)pppppppcVar6 + (int)ppppppcStack_158 * 10 + 0xe) * 2);
                    ppppppcStack_134 = (code ******)pppppppcVar6;
                    puVar8 = (undefined4 *)
                             (**(code **)(puVar22 + -0x7f50))((int)unaff_s2 >> 0x1f,unaff_s2);
                    unaff_s3 = pppppppcVar6;
                    puStack_164 = puVar8;
                    if (puVar8 != (undefined4 *)0x0) {
                      (**(code **)(puStack_198 + -0x7b20))(puVar8,0,unaff_s2);
                      puVar8[1] = pppppppcVar21;
                      if ((code *******)0x1000 < pppppppcVar6) {
                        unaff_s3 = (code *******)0x1000;
                      }
                      unaff_s2 = (code *******)
                                 (**(code **)(puStack_198 + -0x7f50))(0,(int)unaff_s3 << 1);
                      if (unaff_s2 == (code *******)0x0) {
                        param_2 = (code *******)&DAT_00000007;
LAB_000d799c:
                        param_1 = *(code ********)(puStack_198 + -0x7fa8);
                        (*(code *)param_1)(unaff_s2);
                        (*(code *)param_1)(puStack_164);
                        pppppppcVar24 = unaff_s5;
                        puVar22 = puStack_198;
                        goto LAB_000d7644;
                      }
                      param_1 = (code *******)((uint)((int)param_1 + 0x22) >> 0xc);
                      pppppppcVar21 = (code *******)(uint)(param_1 < pppppppcVar21);
                      puVar22 = puStack_198;
                      ppppppcStack_16c = (code ******)param_1;
                      if (pppppppcVar21 != (code *******)0x0) {
                        puVar8 = puStack_164 + (int)param_1 * 5;
                        pppppcStack_148 = (code *****)&pppppcStack_120;
                        pcStack_14c = (code *)(*(int *)(puStack_198 + -0x7c94) + -0x2574);
                        pcStack_144 = (code *)(*(int *)(puStack_198 + -0x7d50) + -0x7240);
                        pppppppcVar24 = param_1;
                        uStack_160 = uVar20;
                        ppppppcStack_13c = (code ******)pppppppcVar25;
                        do {
                          ppppppcStack_16c = (code ******)pppppppcVar24;
                          param_2 = (code *******)
                                    (*pcStack_14c)(uStack_160,ppppppcStack_16c,pppppcStack_148);
                          uVar20 = uStack_160;
                          pppppppcVar25 = (code *******)ppppppcStack_13c;
                          if (param_2 != (code *******)0x0) goto LAB_000d799c;
                          ppppppcStack_184 = ppppppcStack_11c + 1;
                          if (ppppppcStack_16c == ppppppcStack_158) {
                            unaff_s3 = (code *******)((int)ppppppcStack_134 - iStack_118);
                          }
                          else {
                            unaff_s3 = (code *******)
                                       ((int)pppppcStack_120 - (int)ppppppcStack_184 >> 2);
                          }
                          puVar9 = (undefined2 *)
                                   ((int)puStack_164 + puStack_164[1] * 0x14 + 8 + iStack_118 * 2);
                          iStack_118 = iStack_118 + 1;
                          puStack_150 = puVar9;
                          ppppppcStack_11c = ppppppcStack_184;
                          if ((int)unaff_s3 < 1) {
                            pppppcStack_12c = (code *****)0x0;
                            uStack_128 = uStack_128 & 0xffffffff;
                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);
                            param_1 = (code *******)0x1;
                            puVar22 = puStack_198;
LAB_000d78d0:
                            unaff_s5 = (code *******)apppppcStack_114;
                            param_2 = (code *******)&uStack_128;
                            pppppppcVar21 = (code *******)&pppppcStack_12c;
                            do {
                              if (((int)unaff_s3 >> ((uint)param_1 & 0x1f) & 1U) != 0) {
                                uStack_1a0 = CONCAT44(pppppppcVar21,unaff_s2);
                                param_4 = param_2;
                                (*pcStack_144)(ppppppcStack_184,
                                               apppppcStack_114[(int)param_1 * 2 + 1],
                                               unaff_s5[(int)param_1 * 2]);
                                puVar22 = puStack_198;
                              }
                              param_1 = (code *******)((int)param_1 + 1);
                            } while (param_1 < &DAT_0000000d);
                          }
                          else {
                            pppppppcVar24 = (code *******)0x0;
                            puVar13 = puVar9;
                            do {
                              *puVar13 = (short)pppppppcVar24;
                              pppppppcVar24 = (code *******)((int)pppppppcVar24 + 1);
                              puVar13 = puVar13 + 1;
                            } while (pppppppcVar24 != unaff_s3);
                            (**(code **)(puStack_198 + -0x7b20))(apppppcStack_114,0,0x68);
                            pcVar3 = pcStack_144;
                            unaff_s5 = (code *******)&pppppcStack_12c;
                            param_2 = (code *******)0x0;
                            puVar22 = puStack_198;
                            puStack_138 = puVar8;
                            do {
                              pppppcStack_12c = (code *****)0x1;
                              uStack_128 = CONCAT44(puVar9,uStack_128._4_4_);
                              if (((uint)param_2 & 1) == 0) {
                                uVar20 = 0;
                                iVar23 = 0;
                              }
                              else {
                                pppppppcVar21 = (code *******)apppppcStack_114;
                                uVar20 = 0;
                                do {
                                  uStack_1a0 = CONCAT44(unaff_s5,unaff_s2);
                                  param_4 = (code *******)&uStack_128;
                                  (*pcVar3)(ppppppcStack_184,pppppppcVar21[1],*pppppppcVar21);
                                  uVar20 = uVar20 + 1;
                                  pppppppcVar21 = pppppppcVar21 + 2;
                                } while (((int)param_2 >> (uVar20 & 0x1f) & 1U) != 0);
                                iVar23 = uVar20 * 8;
                                puVar22 = puStack_198;
                              }
                              *(code *******)((int)apppppcStack_114 + iVar23 + 4) = uStack_128._0_4_
                              ;
                              *(code ******)((int)apppppcStack_114 + iVar23) = pppppcStack_12c;
                              param_2 = (code *******)((int)param_2 + 1);
                              puVar9 = puVar9 + 1;
                            } while (param_2 != unaff_s3);
                            param_1 = (code *******)(uVar20 + 1);
                            puVar8 = puStack_138;
                            if (param_1 < &DAT_0000000d) goto LAB_000d78d0;
                          }
                          puVar8[6] = iStack_118;
                          puVar8[5] = pppppcStack_12c;
                          puVar8[3] = puStack_150;
                          puVar8[4] = ppppppcStack_11c;
                          puVar8 = puVar8 + 5;
                          uVar20 = uStack_160;
                          pppppppcVar25 = (code *******)ppppppcStack_13c;
                          pppppppcVar24 = (code *******)((int)ppppppcStack_16c + 1);
                        } while ((int)ppppppcStack_16c < (int)ppppppcStack_158);
                      }
                      (**(code **)(puVar22 + -0x7fa8))(unaff_s2);
                      uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
                      param_4 = (code *******)0x3;
                      pppppppcVar6 = (code *******)
                                     (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                               (uVar20,ppppppcStack_18c,ppppppcStack_188);
                      pppppppcVar24 = (code *******)local_6c;
                      if (pppppppcVar6 != (code *******)0x0) {
                        pppppppcVar24 = unaff_s5;
                        puVar22 = puStack_198;
                        if (pppppppcVar6 == (code *******)&DAT_00000005) goto LAB_000d765c;
                        goto LAB_000d8010;
                      }
                      ppppppcStack_184 = *(code *******)(iStack_154 + 0x60);
                      *(code *******)(iStack_154 + 0x80) = ppppppcStack_168;
                      uStack_160 = (uint)((int)local_6c << 0x1c) >> 0x1e;
                      param_2 = (code *******)
                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))
                                          (*(undefined4 *)(uVar20 + 8),uStack_160);
                      puVar22 = puStack_198;
                      if (param_2 == (code *******)0x0) {
                        ppppppcStack_16c = ppppppcStack_15c;
                        uStack_128 = ZEXT48(ppppppcStack_140) * ZEXT48(ppppppcStack_15c);
                        unaff_s2 = (code *******)
                                   (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa6c))
                                             (*(undefined4 *)(uVar20 + 4),&pppppcStack_120);
                        param_2 = unaff_s2;
                        puVar22 = puStack_198;
                        if (unaff_s2 == (code *******)0x0) {
                          if (((int)pppppcStack_120 < (int)uStack_128._0_4_) ||
                             ((uStack_128._0_4_ == (code ******)pppppcStack_120 &&
                              (ppppppcStack_11c < uStack_128._4_4_)))) {
                            (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xac4))
                                      (*(undefined4 *)(uVar20 + 4),5,&uStack_128);
                          }
                          puVar8 = puStack_164;
                          pppppppcVar21 = (code *******)0x0;
                          unaff_s3 = (code *******)(ppppppcStack_15c + 6);
                          pppppppcVar24 = (code *******)(*(int *)(puStack_198 + -0x7dc8) + 0x9ac);
                          iVar23 = *(int *)(puStack_198 + -0x7dc8);
                          puVar22 = puStack_198;
                          do {
                            do {
                              iVar18 = puVar8[1] + -1;
                              pppppppcVar6 = (code *******)*puVar8;
                              if (iVar18 < 0) {
                                *puStack_164 = 0xffffffff;
LAB_000d7ef8:
                                if (*(code ********)(**(int **)(uVar20 + 0x20) + 0x10) ==
                                    (code *******)ppppppcStack_168) {
                                  param_4 = (code *******)
                                            (*(int *)(uVar20 + 0x48) * (int)ppppppcStack_15c);
                                  param_2 = (code *******)
                                            (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0xa14))
                                                      (*(undefined4 *)(uVar20 + 4));
                                  puVar22 = puStack_198;
                                  if ((param_2 != (code *******)0x0) ||
                                     (param_2 = (code *******)
                                                (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0xa38))
                                                          (*(undefined4 *)(uVar20 + 4),uStack_160),
                                     puVar22 = puStack_198, param_2 != (code *******)0x0))
                                  goto LAB_000d7a74;
                                }
                                *(code *******)(iStack_154 + 0x60) = ppppppcStack_168;
                                param_2 = unaff_s2;
                                goto LAB_000d7a74;
                              }
                              piVar14 = puVar8 + puVar8[1] * 5;
                              param_1 = (code *******)0xffffffff;
                              do {
                                iVar10 = piVar14[-3];
                                if (iVar10 < *piVar14) {
                                  param_4 = (code *******)piVar14[-1];
                                  uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);
                                  pppppppcVar16 = (code *******)param_4[uVar19];
                                  while (pppppppcVar16 <= pppppppcVar6) {
                                    iVar10 = iVar10 + 1;
                                    piVar14[-3] = iVar10;
                                    if (*piVar14 <= iVar10) goto LAB_000d7b7c;
                                    uVar19 = (uint)*(ushort *)(piVar14[-2] + iVar10 * 2);
                                    pppppppcVar16 = (code *******)param_4[uVar19];
                                  }
                                  if (pppppppcVar16 < param_1) {
                                    pppppppcVar21 = (code *******)(uVar19 + piVar14[1]);
                                    param_1 = pppppppcVar16;
                                  }
                                }
LAB_000d7b7c:
                                iVar18 = iVar18 + -1;
                                piVar14 = piVar14 + -5;
                              } while (iVar18 != -1);
                              *puVar8 = param_1;
                              if (param_1 == (code *******)0xffffffff) goto LAB_000d7ef8;
                              if ((code ******)ppppppcStack_180[0x44] != (code ******)0x0) {
                                param_2 = (code *******)&DAT_00000007;
                                if (*(code *)((int)ppppppcStack_180 + 0x51) == (code)0x0) {
                                  param_2 = (code *******)&DAT_00000009;
                                }
                                goto LAB_000d7a74;
                              }
                            } while (((pppppppcVar21 <= ppppppcStack_184) ||
                                     (ppppppcStack_168 < pppppppcVar21)) ||
                                    (ppppppcStack_140 < param_1));
                            uStack_1a0 = ZEXT48((code *)((int)pppppppcVar21 + -1)) *
                                         ZEXT48(unaff_s3) + 0x38;
                            param_2 = (code *******)
                                      (*(code *)pppppppcVar24)
                                                (*(undefined4 *)(uVar20 + 8),uStack_174,
                                                 ppppppcStack_15c);
                            param_1 = (code *******)((int)param_1 + -1);
                            puVar22 = puStack_198;
                            if (param_2 != (code *******)0x0) break;
                            uStack_1a0 = ZEXT48(param_1) * ZEXT48(ppppppcStack_16c);
                            param_2 = (code *******)
                                      (*(code *)(iVar23 + 0x9e0))
                                                (*(undefined4 *)(uVar20 + 4),uStack_174,
                                                 ppppppcStack_15c);
                            puVar22 = puStack_198;
                          } while (param_2 == (code *******)0x0);
                        }
                      }
LAB_000d7a74:
                      (*(code *)(*(int *)(puVar22 + -0x7dc8) + 0x4d2c))(uVar20,3,1);
                      puVar22 = puStack_198;
                      goto LAB_000d7648;
                    }
                    pppppppcVar6 = (code *******)&DAT_00000007;
                    puVar22 = puStack_198;
                  }
                  else {
LAB_000d7644:
                    puStack_164 = (undefined4 *)0x0;
LAB_000d7648:
                    unaff_s5 = pppppppcVar24;
                    if ((param_2 == (code *******)&DAT_00000005) ||
                       (pppppppcVar6 = param_2, param_2 == (code *******)0x0)) goto LAB_000d765c;
                  }
                }
                else {
                  puStack_164 = (undefined4 *)0x0;
LAB_000d765c:
                  pppppppcVar24 = unaff_s5;
                  if ((code *******)ppppppcStack_170 == (code *******)0x0) {
                    pppppppcVar6 = (code *******)0x0;
                  }
                  else {
                    if (*(uint *)(uVar20 + 0x44) <= *(uint *)(iStack_154 + 0x60)) goto LAB_000d7f78;
                    param_1 = (code *******)ppppppcStack_170;
                    pppppppcVar6 = (code *******)&DAT_00000005;
                  }
                }
                goto LAB_000d8010;
              }
              pppppppcVar6 = (code *******)
                             (*(code *)(*(int *)(puStack_198 + -0x7d2c) + 0x3b28))(0xf176);
            }
            if ((pppppppcVar6 != (code *******)0x0) && (pppppppcVar6 != (code *******)&DAT_00000005)
               ) goto LAB_000d8034;
            if ((code ****)pppcStack_17c != (code ****)0x0) {
              *pppcStack_17c = (code **)*(code ****)(uVar20 + 0x44);
            }
            if ((code *******)ppppppcStack_178 != (code *******)0x0) {
              *ppppppcStack_178 = (code *****)*(code *******)(**(int **)(uVar20 + 0x20) + 0x60);
            }
            if (iStack_130 != 0) goto LAB_000d7e2c;
          }
          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);
          param_3 = (code *******)0x1;
          pppppppcVar24 = (code *******)0x1;
          (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);
          *(undefined1 *)(uVar20 + 0x2d) = 0;
          if ((pppppppcVar6 == (code *******)0x0) && (ppppppcStack_78 != ppppppcStack_170)) {
            pppppppcVar6 = (code *******)&DAT_00000005;
          }
          goto LAB_000d7ea0;
        }
        if (param_1 == (code *******)0x0) goto LAB_000d74f0;
      }
      else {
        uStack_1a0 = CONCAT44(1,uStack_1a0._4_4_);
        pppppppcVar6 = (code *******)
                       (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d7c))
                                 (uVar20,ppppppcStack_18c,ppppppcStack_188);
        if (pppppppcVar6 == (code *******)0x0) {
          *(undefined1 *)(uVar20 + 0x2c) = 1;
          ppppppcStack_170 = ppppppcStack_78;
          goto LAB_000d7410;
        }
        if (pppppppcVar6 == (code *******)&DAT_00000005) {
          ppppppcStack_18c = (code ******)0x0;
          ppppppcStack_170 = (code ******)0x0;
          goto LAB_000d7410;
        }
        ppppppcStack_170 = ppppppcStack_78;
LAB_000d8034:
        if (iStack_130 != 0) goto LAB_000d7e2c;
      }
      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4f74))(uVar20);
      param_3 = (code *******)0x1;
      pppppppcVar24 = (code *******)0x1;
      (*(code *)(*(int *)(puStack_198 + -0x7dc8) + 0x4d2c))(uVar20);
      *(undefined1 *)(uVar20 + 0x2d) = 0;
    }
  }
  else {
    pppppppcVar6 = (code *******)&DAT_00000008;
  }
LAB_000d7ea0:
  if (apppppcStack_114[0x1a] == (code *****)**(int **)(puStack_198 + -0x7a54)) {
    return pppppppcVar6;
  }
  pcVar3 = *(code **)(puStack_198 + -0x7a80);
  pcVar4 = FUN_000d80a0;
  pppppcVar2 = apppppcStack_114[0x1a];
  (*pcVar3)();
  iVar23 = uStack_1a0._0_4_;
  iStack_1d4 = **(int **)(pcVar3 + 0xb7e2c);
  ppppppcStack_1cc = (code ******)param_1;
  ppppppcStack_1c8 = (code ******)pppppppcVar21;
  ppppppcStack_1c4 = (code ******)unaff_s2;
  ppppppcStack_1c0 = (code ******)unaff_s3;
  ppppppcStack_1bc = (code ******)param_2;
  ppppppcStack_1b8 = (code ******)unaff_s5;
  pcStack_1b4 = pcVar4;
  if (pppppcVar2 == (code *****)0x0) {
    pppppppcVar21 = (code *******)0x0;
    goto LAB_000d8300;
  }
  if (uStack_1a0._0_4_ == 0) {
    pppppppcVar21 = (code *******)0x0;
LAB_000d82a0:
    pppppppcVar24 = (code *******)0x0;
    (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);
    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);
    uVar17 = pppppcVar2[8];
  }
  else {
    pppppppcVar21 = (code *******)(**(code **)((int)*pppppcVar2[1] + 0x1c))(pppppcVar2[1],4);
    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;
    if (*(char *)((int)pppppcVar2 + 0x2b) == '\0') {
      *(undefined1 *)((int)pppppcVar2 + 0x2b) = 1;
    }
    pppppppcVar21 =
         (code *******)FUN_000d7350(pppppcVar2,pppppppcVar24,0,0,0,param_3,param_4,iVar23,0,0);
    if (pppppppcVar21 != (code *******)0x0) goto LAB_000d82a0;
    iStack_1d8 = -1;
    (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xac4))(pppppcVar2[1],10,&iStack_1d8);
    if (iStack_1d8 == 1) {
      if (-1 < (int)pppppcVar2[4]) {
        (*(code *)(*(int *)(pcVar3 + 0xb7b54) + 0x2844))(pppppcVar2,1,0,0);
      }
      pppppppcVar24 = (code *******)0x0;
      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);
      uVar17 = pppppcVar2[8];
    }
    else {
      (*(code *)(*(int *)(pcVar3 + 0xb7b64) + 0x16bc))(pppppcVar2);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0x968))(pppppcVar2[2]);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd58))();
      pppppppcVar24 = (code *******)pppppcVar2[0x1b];
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xba0))(*pppppcVar2,pppppppcVar24,0);
      (*(code *)(*(int *)(pcVar3 + 0xb7ab8) + 0xd98))();
      uVar17 = pppppcVar2[8];
    }
  }
  pcVar4 = *(code **)(pcVar3 + 0xb78d8);
  (*pcVar4)(uVar17);
  (*pcVar4)(pppppcVar2);
LAB_000d8300:
  if (iStack_1d4 == **(int **)(pcVar3 + 0xb7e2c)) {
    return pppppppcVar21;
  }
  pcVar3 = *(code **)(pcVar3 + 0xb7e00);
  iVar23 = iStack_1d4;
  (*pcVar3)();
  uVar17 = *(undefined4 *)(iVar23 + 0xd0);
  (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0xd58))();
  iVar18 = *(int *)(iVar23 + 0x88);
  if (iVar18 != 0) {
    pcVar4 = *(code **)(pcVar3 + 0xb7634);
    do {
      iVar18 = *(int *)(iVar18 + 0x10);
      (*pcVar4)();
    } while (iVar18 != 0);
  }
  *(undefined1 *)(iVar23 + 4) = 0;
  if (pppppppcVar24 == (code *******)0x0) {
    uVar11 = 0;
  }
  else if (((uint)pppppppcVar24[9] & 0x800) == 0) {
    iVar18 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x485c))(iVar23);
    uVar11 = uVar17;
    if (iVar18 != 0) {
      uVar11 = 0;
    }
  }
  else {
    uVar11 = 0;
  }
  FUN_000d80a0(*(undefined4 *)(iVar23 + 0xd8),pppppppcVar24,*(undefined1 *)(iVar23 + 0xb),
               *(undefined4 *)(iVar23 + 0x98),uVar11);
  *(undefined4 *)(iVar23 + 0xd8) = 0;
  (*(code *)(*(int *)(pcVar3 + 0xb7878) + 0x6cb0))(iVar23);
  if (*(char *)(iVar23 + 0xf) == '\0') {
    if (**(int **)(iVar23 + 0x40) != 0) {
      uVar11 = (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x47e4))();
      (*(code *)(*(int *)(pcVar3 + 0xb7814) + 0x447c))(iVar23,uVar11);
    }
    FUN_000c96c0(iVar23);
    iVar18 = *(int *)(pcVar3 + 0xb7814);
  }
  else {
    (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x2314))(iVar23);
    iVar18 = *(int *)(pcVar3 + 0xb7814);
  }
  (*(code *)(iVar18 + 0xd98))();
  iVar18 = *(int *)(pcVar3 + 0xb7814);
  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x40));
  (*(code *)(iVar18 + 0x968))(*(undefined4 *)(iVar23 + 0x3c));
  (*(code *)(*(int *)(pcVar3 + 0xb78c0) + 0x52c))(uVar17);
  (**(code **)(*(int *)(pcVar3 + 0xb7604) + -0x1adc))
            (*(undefined4 *)(*(int *)(iVar23 + 0xd4) + 0x2c));
  (**(code **)(pcVar3 + 0xb7634))(iVar23);
  return (code *******)0x0;
}

